New account registration is temporarily disabled.

DEVELOPMENT METHODS:WHICH ONES ARE YOUR FAVORITES?

Posts

Pages: first 12 next last
Hello everyone, been in deep thought about something lately. Throughout the development of our projects, we all have developed methods, techniques, and habits for better or worse. For most, we don't begin very organized, but as time goes on and our projects get bigger and better, we develop a sense of organization that just seems to stick with you.

With the usage of our favorite programs, things can get pretty messy in our databases. Variables start small, but then we end up getting hundreds of them, switches seem to be no big deal until you realize that you're making your thousandth one. Objects and events are scattered everywhere like someone just dropped a whole bag of skittles on the floor.You code in something that seems to create problems elsewhere and you are ready to pull your hair out over something that was as simple as a variable fix.

What are some methods you have developed that have proven successful and allow you to create your projects with maximum speed and organization? You don't have to have completed a game to respond in this topic because we all have developed a skill that's smart in one way or another. However, if you have completed a game as well, your knowledge and advice would be a golden addition.

What methods can you pass on to new and older developers to guide them in the right direction? What would you avoid doing and what mistakes have you made that you would warn other developers to look out for?

InfectionFiles
the world ends in whatever my makerscore currently is
4622
I feel I do most things poorly and wildly. I'm not sure I can give any pointers.

One thing I've learned is not outright delete things like events, but rather keep them all in their own TEST map type deal. Since the rpg maker engines save on play test or are un-undoable if you switch editing layers.
So usually any big event that's full of dialogue or cutscene scripts I'll keep around on their own map until I'm absolutely sure I don't need them anymore. It can save time too, to have commonly used events on hand, pre made.
author=InfectionFiles
One thing I've learned is not outright delete things like events, but rather keep them all in their own TEST map type deal. Since the rpg maker engines save on play test or are un-undoable if you switch editing layers.
So usually any big event that's full of dialogue or cutscene scripts I'll keep around on their own map until I'm absolutely sure I don't need them anymore. It can save time too, to have commonly used events on hand, pre made.

That's smart! Having pre-made events is a good choice for saving time so you won't have to start from scratch every time. Testing and debug rooms are good to use until you're ready to push them out to their designated locations. Last time I used RPG maker was a while ago, so thanks for the reminder of the auto save thing.

InfectionFiles
the world ends in whatever my makerscore currently is
4622
Glad there was something useful there :)

It also only saves(or things can't be undone anyways) when switching to the event layer. Not sure about MV, but all the other makers do it so it's probably safe to say MV does as well.

Sooz
They told me I was mad when I said I was going to create a spidertable. Who’s laughing now!!!
5354
My favorite method is to make graphics and have someone else worry about the crunchy bits.
Make a plan, and try to stick to it as closely as possible. Constant revisions are fun and exciting, but ultimately are what prevent projects from seeing the light of day. Sometimes it's best to put that cool new idea towards your next project.
Cap_H
DIGITAL IDENTITY CRISIS
6625
This is a good thread. I'll write more about my method later.
Now that I think of it, I forgot to share some of my methods. I did realize a few things while trying out various engines and here is a list that could shed some light on things.

  • Use Resource Conventions
Sometimes, when you get an abundance of resources, its best to categorize and name them according to their type. Usually in RPG Maker, you'll have the standard folders such as "Music" and "Battle", but what lies within can be files with generic names that help alphabetize based on origin. For example, if you want to categorize characters, rename the string to char_(instert name here).

Same thing applies in Game Maker. It's VERY important to use what we call "Resource Conventions"(RC). This is a simple tactic to separate each type of item. For example, we have sprites(spr),objects(obj), and background(bg). Depending on your game, this can make your database look very good and clean so that you never get lost. Before, I did not use RC to my advantage,so my database looked like spaghetti.

  • Please plan
From experience, I can say this. Planning is very important. Its common sense, but when you first start out, its simply an idea. No one knows what may happen to their projects as they grow, and as our minds and experiences grow, so will our projects. New ideas come in like a tidal wave and we're like "ooh, I want to put this and that in there" and you'll be that way until the project begins to be all over the place. When it gets to this point, you're wondering where it should go from here..."Cancellation" or "Scrapping"? Before you begin a new game, please plan. Plan out EVERYTHING, it will save you a ton of time in your precious life.

  • Never EVER forget to back up!
I absolutely cannot stress this enough. Back up your projects on a regular basis. Once a week at the very least. No one knows what could happen to their projects at any given time. Computer crashes, corruption, missing flash drive, etc. I've lost projects before to a corrupted flash drive. At that point I had done so much work, I wondered if it was even worth starting over.Send out copies to your online storage services, store on flash drives and do whatever you can to make sure your work is infinitely available. The last thing we want is a project to not make it out of the oven.

  • Keep variables organized
When you create a project, it will 9/10 use custom variables to make your unique systems such as Banks,Time Spent, etc. When making a set of variables that you know will grow to be abundant, its wise to categorize them so you won't get lost when you'll need to look back for them.

  • Add commentary as you code!
This is an extremely important one! I cannot stress enough that commentary will save you mounds of brain power and stress. When you code something, you'll have to keep track of what it does and how your systems work. By adding lots of commentary on your events, you'll never get lost and wonder what does what anymore. Sometimes, its best that you take a break from your projects, but not TOO long.Days can become weeks, weeks become months, and so on. If you don't add commentary, you'll come back and be like "I forgot what this stuff does". But, if you do add commentary, you'll be able to read it and immediately know where to pick off from.

  • Work smarter, not harder
When working, you'll want to find the most efficient way possible to do something. There are LOTS of ways to get to the same goal. Everyone codes a little differently and depending on your level of knowledge, you can create some awesome stuff. After getting the gist of what your program can do, you'll find the wittiest way to do things. In fact, depending on what this method is, you could cut your workload in fractions.

For example, instead of making a parent object in my projects, I simply copied the object and did some stuff to it. That's wrong. You want the parent object to set the standard for the kids. Each "kid" shouldn't have their own programming.They can inherit their events and add some code to become original though. Your dad may be a doctor, but the next kid wants to be a doctor that can play basketball XD.

  • Don't be afraid to ask for help
Some developers can often have a sense of pride and idea that they can always do everything on their own even if they don't know what the heck they're doing.Realistically, there is always going to be someone smarter than you. Game developers always learn from one another because we are all on different skill levels and have our own special talent(s). Heck, that's why were here right? If you think about it, we're all one big team trying to help one another improve. Without one another, we'd be wondering on how to do things for years, when someone could have taught you in a couple days. Always, ALWAYS be open to learning, getting help, and receiving feedback on your content. It will save lots of time on your end. You wouldn't believe how happy I was when I first saw codes work that I thought would be "hard to learn".

  • Picture what's happening before you test and test lots
As we all know, testing takes a LONG time. I can't even begin to explain how important it is to test. As your projects become more ambitious, so will your load times, bugs, test times,and content. When you are coding an event, always imagine it as you're coding. There are many games I've seen that made me think "did the developers even test this thing"? So, I advise that you test and test lots. Depending on the game type and content, more tests may need to be run. Since RPG Maker games do not require things such as gravity, you won't have to worry about nasty collision detections and stuff. Also, when you finish a game, you most likely will not be aware of every bug, so don't be shy on letting others play your game so they can help you out with that.

  • If you're in a team, stick to your forte(s)
Lets face it, we've all thought what it would be like to make our projects by ourselves, hence why we often start off doing so. If you aren't good at something then you have two choices; get help or learn it yourself. But, by the time you've become a jack of all trades, you'll realize that things would have gotten done faster and more efficiently if you had someone who specializes in an area. Being a one-man team is a challenge especially if your project is 100% original.Its rare to be the composer,artist,programmer,tester,and marketer all in one. There are a vast variety of talented people here and around the world that you could reach out to. A simple cry for help could save you months, even years of time.
Marrend
Guardian of the Description Thread
21806
I usually make a folder in my computer for projects that I work on. The last couple of projects, I split up things into sub-folders. For example, all the scripts I'm using, generally in an unmodified version, are in a "scripts" sub-folder. Same with music and graphics. Writing, such as the game's dialog, plus any random notes that I think might be useful, tend to be in the base directory.

I must admit, I don't always make comments in the scripts I write. Or make any kind of notes on how it can be used, if I'm okay with other people using it (I usually am, though), or that I even made it. Maybe not the best policy!
author=Marrend
I usually make a folder in my computer for projects that I work on. The last couple of projects, I split up things into sub-folders. For example, all the scripts I'm using, generally in an unmodified version, are in a "scripts" sub-folder. Same with music and graphics. Writing, such as the game's dialog, plus any random notes that I think might be useful, tend to be in the base directory.

I must admit, I don't always make comments in the scripts I write. Or make any kind of notes on how it can be used, if I'm okay with other people using it (I usually am, though), or that I even made it. Maybe not the best policy!

Now, that is something I haven't thought of. Keeping lots of notes of dialogue would prove to be very useful so you aren't infinitely thinking about new concepts in the storyline.

And yes, commentary would be best especially if the script is "Free to use". Its important to sign your work and let people know who made it so you'll receive credit for it. The last thing you want is for someone to steal your work and claim it as their own. Believe me, I've seen it happen. People will steal scripts and say its theirs. As long as it doesn't bother you, its fine. But, I would update that policy. Small codes is one thing, but entire scripts need credit of some sort(at least IMO).

Usually at the beginning or end of scripts, you'll put "(script name) created by (user). Please give credit if used". Or if you don't care about credit simply put "no credit needed".
Red_Nova
Sir Redd of Novus: He who made Prayer of the Faithless that one time, and that was pretty dang rad! :D
9192
Make a prototype before going all in with a big project. First and foremost, you need to make sure the idea you have works as a game, since what sounds nice in your head may not transfer well to an actual game. Think of it like a rough draft of an essay, or a quick sketch of a work of art. The idea of the prototype is to get the core of your game working the way you want it. For RPGs, this would mostly involve the battle system with all possible party members. For platformers, it's a basic level containing every mechanic you want to implement.

The best thing about prototypes is that you can be as sloppy and disorganized as you want since this is not something you're going to spend months or even years on. Variables scattered all over the place, horribly inefficient code, and garbage/RTP assets if you're planning on having custom graphics are all the benefits of getting your idea out there. Just throw down your ideas, see what works and what doesn't, and then refine it from there.

The prototype is for you and anyone else that would be potentially involved in the project. NO ONE ELSE. It will look ugly and play roughly. Hell, if you take the time to optimize your code or improve your assets, you're doing it wrong. Here's the protype for Braid right next to the finished game (Hidden for size)


This is how shitty you can make your protoype look because it's NOT meant for public consumption. It's just there for the developer to look at what works and what doesn't.


Once your prototype is done and you're ready to start working on the game proper, start a brand new project and work from there. Don't use anything from your prototype in your final game, and for the love of god don't use the prototype as the base for your final game. Scrap everything you've done, and remake it all from the ground up. That's your chance to write better code, develop better assets, and organize your variables/switches instead of haphazardly putting them all together.
My favorites are:

-mad rush to brainstorm cool ideas in a text document
-make proclamations about how great it is going to be and sign-up for the event
-never actually implement anything
-abandon event in shame.
@Red_Nova
You nailed a key point that I had completely ignored and should be considered for those making new games. Prototyping a game is a crucial part of the development process. Most of them usually start off as squares or sloppy artwork as you have shown above. There is an interesting YouTube Channel known as Beta64 that discusses a lot of games in their earlier days. I recommend watching it at some point. One thing I've heard from pro developers' interviews is to make sure something is fun before charging into something head first.

@kentona
This had me cracking up XD and unfortunately, it does happen. Lots of ideas never get to make it out the door due to this. I guess the issue is that ideas seem nice on paper or in your head, but then when it comes to programming the thing, you have to go around the block to learn how to do it. Deadlines and time limits can give pressure, but its that pressure that us as developers need to experience because in real companies big or small, you cannot take your sweet time making a project as it costs money...LOTS of money. However, if you are self-employed and make projects in leisure time, more power to you.

Though, I haven't exactly participated in an event yet O_O. I'll change that in the future.
+1 for plan everything.

I've worked on my game for a good 6 months, thinking i had the engine down and i could do story. When i started doing the story though, i didn't have a plan. I had ideas for where i wanted the story to go but no solid plans. This ended up in me remaking almost EVERYTHING since the story didn't feel as good as i wanted it to be. I cannot stress this enough, TAKE TIME TO DO YOUR PLANS, EVEN IF IT TAKES A YEAR! Now i have everything planned.

My 2nd tip would be ; Don't settle for the first thing.

You have an idea, it feels like it's the right one. Don't put it in the game yet! Take your time, sleep on it. Once you're 100% sure then add it in the game. I've done this misstake way too many times and it ends up making me restart a bit of the game over and over and over.
InfectionFiles
the world ends in whatever my makerscore currently is
4622
It can also be said that don't use all your time for planning. Like, don't just theorize and never get anything actually solid done.

Trial and error is a corner stone of any development plan. It's unavoidable even with the best planning. Don't trick yourself into thinking that great planning will equal a flawless product. Because nothing is assured.

That isn't to say don't plan, but rather that no matter how much you plan you will always learn better along the way. Experience makes perfect. (or at least mediocre :p)
You both are absolutely correct.Its wise to plan, but not so much that your game is simply a dream and you never implement it into an engine.

Years ago, I started a project with absolutely no knowledge of how to even begin making a game, I just simply played them. What people need to know is that as you play each and every game, you are becoming a developer inside. You will begin to notice things you do or don't like, errors, good and bad game design,etc.

I've remade my "flagship" project SEVERAL times as time went along. When new ways of handling code came to mind, or a new concept was introduced, it would result in going back and remaking codes to adapt to the new concept. For example, in Game Maker, I had 2 sprites for every character,monster, and NPC. There was a left sprite and a right sprite. As dumb as I was at the time, I didn't know that you could just make one sprite,set the origin, and flip the sprite with codes. With that done, I had easily cut the resources in half, but I had to spend several days reprogramming the database to cater to this new style. Of course there is a difference between not knowing and not planning, but unfortunately, I did both XD.

Planning is what leads to success and much less time will be spent wandering the desert and more time transferring your imagination into works.
Great job with this! Thanks for sharing that. Its great to think of your database as a binder. Everyone remembers dividers right?



Link makes a valid point as it should indeed look like the one on left. This form is something that should not be pushed aside.For example, a form I use for platformers is

-World 1
+Stage_001
Stage_001_a
Stage_001_b
+Stage_002
Stage_002_a
Stage_002_b
+Stage_003_Boss
I know that if I try to come up with a plan and stick to it rigidly, I'll change it all a million times before it's done. But I still have a rough set of steps for every project.

Here's what I usually do:

1. Write an outline for the game's story. Get a solid idea for the game's beginning and ending, and make a vague outline for everything inbetween and figure out the finer details of how the story gets to that ending as development progresses.

2. Decide what systems you want and what scripts you need to use to attain them. Do this as early as possible. For RM, this is basically setting the "engine" of what you want to do, and it's best to get this done as early in development as you can so that you don't risk breaking something major halfway through your project because you decided you needed some new feature.

If there is a possibility that your game will be commercial and you don't have a scripter, check every script you come across to make sure commercial use is allowed. (Honestly, I just avoid "No Commmercial" scripts in general.)

3. Do the system and UI-related graphical assets first. Icon sets, UI materials, face sets. Do a little of everything to get enough for mock-ups, test maps, test battles, etc.

4. Rather than prototyping with RTP and replacing it with my own assets later, I tend to just make one big debug room to make sure everything is in order. I don't end up building my in-game areas until I have a fair number of assets ready, because I can't get a good "feel" for my envrionments with placeholders.

5. At this point I kinda just do whatever I feel like working on that particular day. Doing too much of one thing gets boring quick, y'know.
InfectionFiles
the world ends in whatever my makerscore currently is
4622
Something else small I do when starting a new project in any of the rpgmaker engines is totally clean house of all the preset options on every tab in the database besides animations(since it's useful to keep handy to save time) I sometimes do it for Status Effects too, but often find it doesn't hurt to keep those either to save time and modify them when needed.
Pages: first 12 next last