Starting a simple 2d game
ANommyMousse GameDev DK30 Spring 2021 1 1
Description
Making a simple 2d game with an editor, based loosely on solomon’s key. This will be done in unity, using the URP mode, since it’s 2d I’ll see if the shadow and lights work, it may not work since it’s still in beta (like so much of unity). The plan is to release to steam, to see what’s involved in that and how long it takes, adding achievements etc… also a linux release as well.
Recent Updates
Week 4 : So I got most of my stuff done, my video description includes a rant as I’m pissed off at collaborate! https://youtu.be/3zf2wqW8XbY
Didn’t get done the more levels bit, but that’s because I spend a day backing everything up. and trying to see if collaborate would do what I told it to.
This week will be the setting up a new DK30 which is essentially just extending this one. So it’ll still count up the weeks, but it’ll be a different DK30 :P
Looking at the orignal week 4 goals, level transistions and saving levels to jstor and the editor didn’t get done. But interactions and particle effects, level selection did, also the polish on some of the menus is in a better state than I orginally planned maybe even good enough for release, just needs to be swapped over to master audio and the credits filled in a bit.
End of week 3 https://youtu.be/K_y3siwOm50
A bit backwards and a bit forwards too. Lost the player animations since I removed corgi engine. Added all of planned week 3 stuff from week 2 plans, except a little noddy for exit level.
So week 4 plan, now.
- Add in SFX for most things.
- Particle FX for some stuff.(store bought)
- re-Add in the player animation controller and animations
- Kill the player by enemies/Restart level.
- Add in a level select/unlocked screen.
- Take a look at what happens if you more levels to the game. I may have to do something other than sceneload to get the levels in, perhaps one level and internal control, no loading but bit of memory hog since all stuff in memory, maybe look at addressables as solution.
So the offline editor is probably not going to be a thing for now, I’ll wait till I have a few little levels done and have a think on it.
End of week 2.
Corgi engine - going to use in spite of some little issues. https://www.youtube.com/watch?v=TgOntWrr5qs
Player - basic animations done - movement needs tweaked for problems.
Destructable bricks - added but not completed, it looks like if I use tiles I’ll have to use names which is not good, but still ok as it’s kinda a one off.
Timer function and GFX was completed, not interfaced though with music yet. I may just overlay the clock music with a sliding volume.
Week 3 - Not doing what was originally planned on. Week 3 Plan now…
- Tidy up destructable brick code by head bashing.
- Implement key with alternate level choice(Hidden level) - Exit level code.
- Add basic enemy horizontal, vertical ping pong.
- Make generic spawn for bricks on a tilemap. (Plan integration for editor)
- Make the player able to spawn bricks and destroy with keypress.
- Enemy collide with destructible bricks and destroy them.
Completed the keyboard and gamepad configuration screen.
I bought the corgi engine - as it was 50% off. It seems to do a lot of the stuff I want to actually do with the benefit that I will no longer have to do them. I mean my game isn’t complicated and I 'almost’™ have it hooked up, so I’m just not sure at this point it’s worth the hassle of changing it, I think I’ll see how far I can get with the corgi ‘engine’ till this Sunday if it’s good progress then I’ll keep using it, if not welp I’ll have some scripts I can look at to see if there’s anything worth re-using. It has things like timers, keys, detestuctable bricks, platforms, teleports, fancy fades, lots of player stuff, it’s not that this stuff is hard to do, just takes time, time I could be doing important thumb twiddling! I already have an input manager so that might be an issue as well as a game state manager and scene loader… I’m kinda hoping I can just use it in the main game and perhaps level select and the rest be my fully working stuff. Here’s crossing my fingers and hopping for the best. (Hop springs eternal!)
So the end of week 1. https://youtu.be/mh08xm3cLt0
A couple of things still to do, like video options, the character select took a little bit since I had to refactor it a bit. Also mouse sprite position proved more tricky than I thought. (All menus put on back burner this week, after the video options is done.)
Thoughts on this weeks tasks.
- The player may not be fully animated, I don’t have all the anims I need, not going to create them at the moment.
- bricks and backgrounds should be ok, I have some already imported.
- Timer I have the gfx, and timers are fairly easy to do, need to hook into a timer that warns the player by altering the music once it reaches a certain point though. Also picking up a timer boost resets the music back to normal.
- Key, Simple, just need to be able to flip it around to get to hidden rooms.
- Door, can use code I have already done in different project.
- Level transition, Pretty simple BUT gamestatemachine may get in the way.
Welp that’s this weeks big update :D
Estimated Timeframe
Apr 4th - May 2nd
Week 1 Goal
Gather up some assets, use what I’ve already done and adjust for 2d. Remake the menus and backend to work. I’m not actually sure of the theme, but that’ll probably fall out from whatever assets I have lying around.
Week 2 Goal
Make the player, and bricks. Add destructable bricks. Add timer, key and exit, with level transistion, also hidden level transistion mechanics.
Week 3 Goal
Make the editor for the levels with save/load feature and grouping feature. This is stand-alone so folks can make levels for the game without actually doing any coding and suchlike.
Week 4 Goal
At this point, player moving, bricks, background, some music(maybe not final), SFX(again maybe not final), static AI, level transistions, saving levels to jstor. (A lot of this is re-using what I’ve been working on). These tasks are all fluid but I hope to get the basics done pretty quick, the main goal is main mechanics and level editor offline that works with main game.