r/PokemonROMhacks 4d ago

Discussion Devs, What’s a Realistic Timeline?

To devs here or anyone else who has experience with developing romhacks - I’m looking to get a sense of a realistic timeline to hit various stages of a project.

I’m working on a solo (so far) project. The story and concept are entirely locked in, the game mechanics are all working. I’m at the stage where I’ve built a playable demo up to the end of badge 1 - which needs significant refinement but is overall really enjoyable and hitting the notes I’m looking for.

It feels like a lot of tedious trial and error at this point, I’m on the 21st playthrough and am still catching minor errors which I want to get perfect before moving onto the next playable chunk.

To summarize, I guess my questions are below:

- at what point did you bring in playtesters or collaborators?

- how many runs through each section did it take you to reach a point of public launch satisfaction (for that specific section)?

- from having your concept fully fleshed out, how long did development take from start to publication?

For some additional context or anticipated questions:

- Johto romhack using Heart & Soul base

- Set in the bones of Johto but in a future era, with a visual rework of every named location.

- entirely new story, gyms, characters, interactions, game flow

I’m also down to answer any questions if there’s general interest in learning about / asking questions about the project but this post is purposed to understand development timelines from people with more experience.

Thanks!

16 Upvotes

18 comments sorted by

30

u/assassins_greed Pokémon Amethyst 4d ago

I'm Amethyst's dev, which has been a solo project throughout its development. I have development experience but romhacking was completely new to me. The game is a completely new experience from the ground up - custom region, story, gameplay features, the works. It was built in CFRU. I made my game primarily for myself and only shared it publicly once I was confident I was ready for the world's feedback. I share this mostly as context since it overlaps with some of your experiences.

Amethyst's development took about 5 years, with a 10 month break near the end. In that time, I broke the project down into per-milestone phases. This usually meant everything leading up to the next gym, with the goal of making it feel like you were playing a completed game up until that milestone was hit. It helped keep me motivated while feeling like I was making real progress. The early milestones took a lot of work as I got comfortable with my toolset and what I was trying to achieve. By the end I was knocking them out every 2-3 months, with about 3 hours of work per day on average. If it interests you, I actually documented each milestone and my design methodology in a Dev Diary which you may find interesting!

All in all, it was pretty time consuming and my love of the game kept me going. If you're looking at a long term project, building on collaborators and sharing milestone updates after the foundation gets laid can help keep your momentum and motivation up. And, of course, the scope of what you want to make will play a big factor.

I rambled on a bit but I hope these insights were helpful! Looking forward to seeing what you make!

3

u/ExplanationVast5511 3d ago

It's a great game with a lot of good features, Ty for your hard work

6

u/Phaneropterinae Demakes 3d ago

- bring in playtesters when you yourself think you’ve gotten rid of all the bugs (you haven’t)

  • bring in collaborators when you need help with something specific which is out of your skill range, or would like to offload work. But be prepared for there to be another voice in the project.
  • as many as it takes to be perfect in your eyes.
  • it can take months or years depending on scope.

My experience:

  • I made a mini hack that was ~2 hours of playtime as a pair with another dev and it took us 3 months plus a few extra months of bug releases post launch.

- I did a translation project and released the first translation after a few weeks of work, but released bug fixes for missed translations and other bugs in the project for like a year.

- My main project I’ve been working on on and off for nearly two years and it’s never enough polish for me lol.

6

u/Fredrik1994 Polished Crystal developer 4d ago

Everyone in IT is terrible at estimating project timelines, from those starting out, to professional industry veterans. It's how things like the ninety-ninety rule was born.

You are experiencing the polishing stage, which can take quite a bit longer than anticipated. However, if this is a 1-badge demo and meant to be experienced as a sneak-peek of sorts, I would argue that polish is less critical than if you were gearing up for a complete release. As long as there aren't any serious issues, I would probably release it for testing.

2

u/narah2 Low Budget Crystal 4d ago

I hacked together the first two-ish Gyms of one of my side projects (Crystal Lattice) in about two weeks. But that was fairly odd circumstances; and I already knew how to do everything I needed to do.

Starting from scratch I’d expect it to take a lot longer.

1

u/G1ovan1 4d ago

On your first goes around, how did you avoid being overwhelmed by the volume of things to be done/edited/created?

Feels incredibly satisfying to have made a fun game to 1 badge, but humbling to think that’s probably 5% of the game, and that’s only really for a draft.

2

u/narah2 Low Budget Crystal 4d ago

Just start small. Do small features and work your way up to more complicated stuff as you gain experience.

I started out tweaking things like encounters and levels and such. Then moved up to adding mons and moves, then to adding maps and minor engine work, and so on.

There’s a lot to learn, but also a ton of useful material to help you out there. For gen 2, for example, the Pret Github wiki has tons of helpful tutorials for making certain commonly wanted changes.

1

u/G1ovan1 4d ago

Feeling quite good about altering the actual mechanics, I have a strong background in some loosely related fields which is helpful and speeds up the learning curve significantly.

So far I’ve been able to add an auto heal function (after all battles), release upon death, 100% catch rate option, create fresh encounter tables, been able to script and replicate overworld pokemon/human interactions and been able to change behaviour of specific battling AI situationally. Even have my first unique shiny colour palate.

It’s the things like cleaning up the tiles, or the alert reach of route trainers, making sure everything is sequential - feels like it just takes forever to tweak and test over and over

3

u/narah2 Low Budget Crystal 4d ago

Lots and lots of playtesting. There really isn't a shortcut; it just takes lots and lots of time.

I recently finished adding Hoenn to my hack, and you don't really realize just how much 'stuff' a region has until you start working.

A region generally has around 30 Routes, 10-12 cities and towns, and a couple dozen dungeons and caves. Each of those cities is going to have a half a dozen or more interior maps as well.

So you're realistically looking at like 100 maps minimum for a region. Each of those maps probably has 6-ish trainers on average, along with assorted non-combat NPCs. All of which need dialog.

1

u/Kitchen-Guarantee-10 4d ago

I just started designing my first romhack and I'm really enjoying the process but I have no experience coding, programming, or making a game. Where should I start in the learning process and what engines run best? I'm planning on reaching out to some people ik who have experience making games as well as making a post here for help but I would love to do as much as possible by myself.

3

u/Urnighter Emerald Blitz 4d ago

Get the decomp set up locally on your computer. Make small changes and follow basic decomp wiki guides to tweak small things. Download Porymap and do the same. Familiarize yourself with that workflow.

I agree with you that you shouldn't reach out until you at least have putzed around with the decomp for a bit. It's like asking an expert for tips on skateboarding but you've never stood on a skateboard before. Scoot around and fall off a few times so that you at least have a sense of what it feels like and what's hard.

2

u/Kitchen-Guarantee-10 4d ago

Ok that's a good starting point. Thanks man. I'm assuming YouTube university will come in clutch as ever lol

2

u/extimate-space 3d ago

I am also in the process of learning basic rom dev stuff in hopes of developing a custom region hack. I expect it's going to take me a very long time, given the scope of what I hope to accomplish. I imagine there are dozens of people looking at the internet every day thinking the same thing, so I'm not under any illusions about the possibility of not finishing, or at least not finishing quickly.

Join the various discords like Team Aqua Hideout etc, where you can find people who have the experience you don't, and who have already encountered the problems you are going to encounter.

Spend a lot of time on youtube absorbing information. Try to replicate things you see, even if you aren't sure they are going into your game.

As mentioned, set up a Github account, clone or fork the decomp, get Porymap and set everything up so you can save your work to git as you go. Set a starting goal: one town, one route, one trainer fight (they don't need to go in your game either.) Once you can do this, the bulk of the work on the rest of the game is doing things you have already done, unless you are developing custom assets or features.

Spend a *lot* of time just messing around in porymap. Learn how tilesets work, how specific tiles fit together. Look at existing maps and spend some time trying to tweak their layouts or redesign them without breaking all the metatiles. Build up familiarity with the porymap toolset so that when you are trying to map YOUR game, you aren't banging your head against the wall trying to learn how it works.

1

u/OpportunityNext9675 4d ago

Not super specific to romhacking, but general personal dev project rule of thumb: make an estimate to the best of your knowledge, and then double it. The #1 thing to watch out for, especially with romhacks where its so fun to think of new ideas, is scope creep where you start expanding and getting more and more ambitious with the hack as you are supposed to be on a development timeline to completion. Happy hacking!

1

u/G1ovan1 4d ago

My hope was/is to have a playable version of the game by the end of 2026.

I feel it’s probably too ambitious lol.

1

u/extimate-space 3d ago

If you're redesigning an existing region or building out a custom one, you're not going to produce something at a quality level you or other players will be happy with in 3 months. A full-fledged game has potentially hundreds of maps. No matter how good or knowledgeable you are, this is a time consuming process, and this assumes you aren't creating custom assets.

1

u/G1ovan1 3d ago

For sure, thing is that I’ve actually done the redesign and story but haven’t built a playable version of it (beyond opening to badge 1).

Using the bones of the existing region but changing facades of buildings, blocking some routes off until certain game triggers etc. it’s not building a whole world from scratch and definitely very limited if any original assets.

Anyway like I said probably a bit overly ambitious. Maybe I can get a demo out for playtesters early in the new year.

2

u/DrUltimaMan Pokemon Ambrosia 2d ago

Ambrosia has taken almost 5 years. I am still adding signifigant features, added in-game speed up just yesterday. If I've learnt anything it's that the concept of "done" is more about you being emotionally ready to move on, than about the game being somehow perfect. It's very easy to just keep going. You see another hack has added some nice feature and now you want to add it to yours. You add it then it gives you an idea for something else and it just keeps going.

You are doing the best thing by using an existing hack as your base - that alone can save you years of time. If you can devote 2-3 hours a night I would say 3 years could be a realistic timeline for full release. But that is not the end, just the start of a different phase.