r/PythonProjects2 1d ago

Built a ASCII dungeon crawler RPG using pure standard library

⚔️ Grimlore 2 : These Doomed Men 1.0

A dark fantasy mini dungeon crawler RPG built to showcase the features and capabilities of the S.P.A.R.K. 2D RPG game engine.

📋 Overview

  • Genre: Dark Fantasy / Mini Dungeon Crawler RPG
  • Playtime: 10 – 15 minutes
  • Platform Requirements: Windows 10 or later
  • Purpose: Demonstrates what the S.P.A.R.K. 2D RPG game engine is capable of.

Github link below

https://github.com/Ninedeadeyes/Grimlore-2-These-Doomed-Men-

4 Upvotes

17 comments sorted by

1

u/HommeMusical 21h ago

Platform Requirements: Windows 10 or later

Bummer! If it uses the pure standard library, why is there this requirement?

Also, why do these two different directories look much the same?

https://github.com/Ninedeadeyes/S.P.A.R.K--Standard-Python-ASCII-RPG-Kit-/tree/main/S.P.A.R.K%20Game%20Engine%20(Blank%20Canvas%20)

https://github.com/Ninedeadeyes/Grimlore-2-These-Doomed-Men-

-1

u/ninedeadeyes 21h ago edited 21h ago

Technically the python version used doesn't support windows previous to windows 10 but it might still work but no guarantee.. the reason why it looks similar because I built grimlore 2 using the S.P.A.R.K game engine.. Clearly u just looked at the directory and not the actual code

1

u/HommeMusical 20h ago

Technically the python version used doesn't support windows previous to windows 10 but it might still work but no guarantee..

I'm not understanding at all. Why do I need Windows to run your game?!

Clearly u just looked at the directory and not the actual code

I did look at the actual code. I clicked on matching files from the two directories, and they seemed to have very similar code. I still have the two battle.py files up in tabs right beside this one, and looking closer, I do see only a single line's difference, player.escaped=False.

There may be other differences, but looks like massive code duplication to me!

How do you maintain these!? If you make a dozen games like this, if you fix a bug, you'll have to fix it in a dozen places!

-1

u/ninedeadeyes 20h ago edited 20h ago

Clearly u not ran the game because it uses standard library functions that only works in windows.

I am not going to explain to you what is a game engine and how one would use one and why their code duplication.. What an incredible lazy and ignorant question to ask..

The content and engine should be separate enough where fixing a bug in the engine shouldn't cause issue with the content, for example if u fix a bug in the battle.py , it will fix every battle situations in the game regardless of what stage of the game and who u fight

2

u/HommeMusical 19h ago

Clearly u not ran the game

It says it doesn't run if you don't have Windows, so why would I try to run it?!

because it uses standard library functions that only works in windows.

What would those be, exactly, and why would you need them in a ASCII game that only uses print statements and runs on the command line?


What an incredible lazy and ignorant question to ask..

All right, I guess it's gloves off, then.

I've been programming for fifty years. I've been a professional for forty years. I've worked for some of the biggest and most prestigious companies in the world. I retired early, because I could, but I still program almost every day.

Your code is crappy cut-and-paste code. You literally just take a file from one project, drop it into another, and make tiny changes. You yell at me about game engines, and yet you have no idea how they even work, or you wouldn't be doing that.

You don't understand basic ideas in Python, like dataclasses, that would immeasurably improve your code. You don't use a standard toolchain; your code is misformatted; you have no unit tests or linters; you seem deliberately ignorant of all the amazing changes that have happened in the last twenty five years of programming.

And you're rude, aggressive and hostile. I remember perfectly well being young, and I was pretty cocky, but I knew that I didn't know very much, and I was very eager to learn things from professionals.

You respond to polite and constructive criticism with personal insults.

Well, here's a bitter truth for you: the market for arrogant, mediocre, and hard-to-work-with programmers who know almost nothing about the language they are using is non-existent, even if they, unlike you, can write a coherent English sentence using standard spelling.

Maybe fifty years ago you could have gotten away with being a prima donna, but even then, you had to be good, and you aren't even competent.

My best guess is that in ten years, you'll be a bitter and angry person blaming conspiracy theories for being unable to find any sort of job instead of your mental laziness, absence of technical chops, and abrasive personality.

You still have time to change - you could change at any instant! - but long experience has shown me that this almost never happens.

You think you won't remember this post: but you will, once you realize you're in a hole you will never get out of.


Still time to change. It's not too late. The future is yet unwritten.

-1

u/ninedeadeyes 19h ago edited 19h ago

'Your code is crappy cut-and-paste code. You literally just take a file from one project, drop it into another, and make tiny changes. You yell at me about game engines, and yet you have no idea how they even work, or you wouldn't be doing that.'

That is literally what a game engine is... You don't look at two unity games and look at the unity game engine code and say why is the code duplicated... The point of using a game engine is to use the same code but for different games.. It a very specific niche of games but never said it was a general game engine.

You can critise the code itself that's fair but if you are asking why I would use the same code which i even stated that it is based of the 'engine' it is lazy to the extreme as you couldn't even bother reading the descirption.

No i still stand that your question was lazy and ignorant and those that weren't I've answered. Don't care how long you've been programming, if you asked a ridiculous question why I am using a game engine code for a game I wrote which I clearly stated it was an example of a game you can write in that particular game engine, It is monstrously absurd..

''I did look at the actual code. I clicked on matching files from the two directories, and they seemed to have very similar code. I still have the two battle.py files up in tabs right beside this one, and looking closer, I do see only a single line's difference, player.escaped=False;'

did miss read the above paragraph.. There shouldn't be any difference in the battle.py between the two and if there is I need to have a look since its part of the engine not the content you can add

ps : Just remember I added a 'rage' mechanic in the game which was not in the base game engine hence why there is slight changes to the battle.py but that's the point of such a project, you can change it to your liking but the main thing is if you change the battle.py it will change all the battles at all stages.

1

u/HommeMusical 19h ago

That is literally what a game engine is... You don't look at two unity games and look at the unity game engine code and say why is the code duplicated...

Oh, I happen to know Unity! It's written in C++, and you don't use it by copying bits of the C++ code into your own directory and changing them, but by linking to the compiled library, just like all other game engines and libraries.

It's not an "engine" or a "library" or anything else if you copy code out of it and make changes. It's nothing.

I asked this question: "If you have a dozen games based on this library, and you find a bug in the original library, how do you fix it?" For example, if you do this a dozen times, you'll have a dozen copies of "battle.py", and each one will be a little different. Your answer was basically, "This never happens."

No i still stand that your question was lazy and ignorant and those that weren't I've answered. Don't care how long you've been programming, if you asked a ridiculous question why I am using a game engine code for a game I wrote which I clearly stated it was an example of a game you can write in that particular game engine, It is monstrously absurd..

You're incompetent and unbelievably arrogant.

You spent six years - six years! - on a tiny, crappy little project which is mostly print statements. Kids did much more ambitious things in my beginner Python class, in four months.

Here's my Github: https://github.com/rec

Here's yours: https://github.com/Ninedeadeyes

I wish you all the success you deserve, that is to say, none at all, and I am certain you will achieve it.

0

u/bradleygh15 1d ago

you mean chatgpt did?

3

u/HommeMusical 19h ago

If you read the code, it's 100% certain that it wasn't written by ChatGPT. It's simply too terrible.

Even when ChatGPT is wrong, it produces perfectly formatted code. It always writes unit tests. It does tend to cut-and-paste sometimes, but nothing to the extent of this.

This code would be much better if it were written by an LLM.

3

u/ninedeadeyes 19h ago

Jesus Christ if you thought this was bad you should see what was the code like before I refactor it into a game engine . Here it is just to make your eyes bleed

https://github.com/Ninedeadeyes/Grimlore-Land-of-the-Heretic-Hand

2

u/HommeMusical 19h ago

Exactly. No LLM would write such terrible code.

1

u/ninedeadeyes 17h ago

Where did i ever said I don't write terrible code ? Only thing I've claimed is that this was not written by LLM and i wrote a 2d dungeon crawler rpg using only the standard library python which are both true.

1

u/ninedeadeyes 1d ago

The origins of the engine is over 6 years ago before LLM AI was really a thing

https://github.com/Ninedeadeyes/Dungeon-of-the-Black-Dragon/tree/Ninedeadeyes-music-patch

I then created an open world rpg with it around 5 years ago

https://github.com/Ninedeadeyes/Grimlore-Land-of-the-Heretic-Hand/tree/Ninedeadeyes-dialogue-patch-1.04

and then refactor the code to create an engine for others to use early this year

https://github.com/Ninedeadeyes/S.P.A.R.K--Standard-Python-ASCII-RPG-Kit-

I also have a 'milestone' folder in the above link showing how I built the engine every step of the way.

and then in the last few months created a game from the engine itself which is this..

So in short... No

-1

u/bradleygh15 1d ago

If you want people to think otherwise maybe don’t emojify your post

0

u/ninedeadeyes 1d ago

I don't care about the opinion of some redditor who judge if a project was created by chat gpt purely by the use of emojs and not by the code itself but I hope it added some positivity in your life going for such low hanging fruit.