Nerves of steel or just plain lazy?

So… I decided to write a game a couple of months ago, in which time I have written zero lines of code.

However, I think I am making great progress. I have figured out the JOGL API, ran away screaming and downloaded JMonkeyEngine instead! I’ve designed a lot of the game rules and written up textual content and worked on balance and playability issues. I’m fifty percent of the way through writing a tester app (based on JOGL) and I have lined up a second tester app to work on next (based on JME, and it will even be playable).

My feeling is - why pour in the coding concrete before you really have a clear idea of what to do? The code is secondary to the game idea in my opinion…

So, what progress are you making on your project(s)? Are you like, with nerves of steel, prepared to defer coding until the design is complete? Or are you like me, plain lazy? Or none of the above?

I am currently refactoring a very big element in my Game right now. (The “World” class btw. Almost everyone should know that one :slight_smile: )
And since that class is so important and so big, I’m currently flooded with errors. I am not able to run the code. I’m pretty much busy with writing TODO’s and removing TODO’s and thinking about how to implement what is wanted inside that TODO.

So yeah… it seems like I have nerves of steel, even if I had a pretty big programming break now… (about 1 or 2 months… :confused: )

Though it’s nice to work over a project and make it look much better, since I improved my skill now.

Why are you refactoring?

I would assume either to make it easier to add new features, easier to use existing features, or to improve readability.

| Nathan

Spent the last two weeks refactoring SPGL, the “engine” or “framework” under our current four games, into something leaner, meaner, faster, easier, simpler, better and nicer. Runaway success so far. The aim is a) to make it so we can make games faster b) get them to run a bit quicker.

Cas :slight_smile:

Most of my work on test project one seems to be refactoring at the moment. Basically I built a quick demo and now need to unpick the mess. But I try never to do pure refactoring - I always work in the context of adding new piece of meaningful functionality (which just happens to involve refactoring).

My last refactor cut almost 5k lines of code out of a 30k line project. Sometime a refactor is a really good idea. But i do get addicted to it.

I am working on writing a “Game” class that all of the games using my engine will extend. Also working on a camera system that actually makes sense… ::slight_smile:

We should build something for doing quick prototype or demo. I spend most of my time doing that and every time it’s like the same boiler plate code that I have to write again and again. (or copy/paste/trying to find where I already did something similar/refactoring -_-)

I never write game code (other than boiler plate stuffs) before having a solid idea of what the game should be like. If I don’t, I would have no clue what to code. I can’t just write a generic World class, Entity class, etc… if I don’t even know what the entire design is.

This is also partly why I dislike using engines and like writing all code by myself from scratch :slight_smile:

Strange, I never have any idea what my games are going to turn out like.

Cas :slight_smile:

Well not graphically, but backend structure. If I don’t know what kind of game I’m making, I can’t tell what the code should look like.

Me either :slight_smile: Honestly, I just start out on whatever road and see where it takes me. None of our games end up being anything like their original designs. Did you know Droid Assault had rabbits in it? And Revenge of the Titans was originally a little square game where you just held the mouse down and shot things?

Cas :slight_smile:

:o I want a version of Droid Assault with rabbits naaaooo!!! ;D

Seconded!!

| Nathan

I have been following the Cas method for a while now. It works way better. Also i try to always keep something playable. Code quality is mostly something MBA’s talk about managing… which is code for they don’t manage it at all (yes worked on one too many large dev teams). So don’t worry about that, but thinking is not coding, and as i have said many times before, you didn’t even think of the right things. This will become very clear as soon as you start to get concrete (aka write code). So overthinking/planing is a mistake IMO.

Just get something working.

He, I did some hobby fantasy/scifi writing for a few years and at one time I used the “just start writing and see what you end up with” deal. Incoherent and impossible to follow stories, that’s what.

I’m pretty sure for game development it works a hundred times better as weird games tend to be very good - it is probably also an incredibly enjoyable development experience. Just let your creativity roam free, every day may bring something new. I’m pretty sure that’s how a game like the Binding of Isaac came to be (OT: love it by the way) :slight_smile:

I always start with something like this: “I wanna mae a 2D plattformer”. I jus start coding and see where it gets me. Mostly I end up with a lot of cool stuff. Design was always something that never worked out for me without doing something with code :smiley: I use a lot of other games as Inspiration too, altough I try to add something unique. This is how Mr. Hat started.

For Stories… mh… I ignore them mostly because I hate these ultra deep stories or Twitter stories (like Final Fantasy XIII). I end up using the mot simple idea of a story and at a Prof. Layton like Twist (If I would be better I probalty try to make something like Phoenix Wright).

Iterate. Have an idea and try it out. If it works, build on it. If it doesn’t, be prepared to ditch it (no matter how much code/artwork/whatever it involves).

We throw away so many hours of code and art all the time it hurts. But it’s the only way to make awesome games.

Cas :slight_smile: