Ooops
October 27, 2021, 05:19:35

Author Topic: Maze Raider - The aMAZEing code a game comp entry  (Read 16032 times)

Offline Derron

  • Hero Member
  • *****
  • Posts: 3675
Re: [ WIP ] Competition entry: Maze Raider
« Reply #75 on: October 14, 2018, 00:40:40 »
Animated mummy: awakening (raising arms and so ...) and also added a walking animation.
Animated adventurer: walking, idle, fire holding
Getting the animations from Blender to Godot was a bit of a pain - the "godot exporter" somehow failed to export animations (with my files - and also the sample files provided by the exporter). Fiddling around with all this stuff took ... literally hours.

So for now I need to export ".dae" (collada) files as they at least contain the animations.


Also I had issue with some materials (if you want to use vertex colors rather than image textures for everything). Also Godot had issues with some objects - hat had off-normals while Blender stated all normals were as expected.

Animations have to get "morphed" too (idle - walk - walk fire - ...). TODO for tomorrow.


Am not really liking the new look (got used to the placeholders ;-)) of the "skinny" characters. Nonetheless... time for bed, kids are awake in <5hrs.


bye
Ron

Offline Derron

  • Hero Member
  • *****
  • Posts: 3675
Re: [ WIP ] Competition entry: Maze Raider
« Reply #76 on: October 14, 2018, 18:43:27 »
Ok, kids in bed - lunch/nap time wasn't successful today (only ~1hr "spare time").

so ... 4 hours to go now. Want to at least create a semi-acceptible startup screen, and 1-2 game elements need to get done. Maybe I even achieve to design the gameover/win screen rather having some monotone-colored rectangles with text :-)

No words about option screens, key configuration and the likes (would have that in if I could reuse code from my BMax framework ...).

And yeah - then hope that exporting for win32 works as intented.


Time for some nice music to listen to... German punk vs 70s. Ok, let's start with "The Sound of Silence" ;-)


bye
Ron

Offline Derron

  • Hero Member
  • *****
  • Posts: 3675
Re: [ WIP ] Competition entry: Maze Raider
« Reply #77 on: October 14, 2018, 20:30:12 »
Wife nagged to do some houseworkstuff ... so meanwhile I (started to ) render out the startup screen:


Hmpf, time is running out soon.


bye
Ron

Offline Steve Elliott

  • Hero Member
  • *****
  • Posts: 3237
  • elgol
Re: [ WIP ] Competition entry: Maze Raider
« Reply #78 on: October 14, 2018, 20:51:20 »
I'm sure if you asked nicely you could mention deadlines  ::)

Render looks great.
Windows 10 64-bit, 16Gb RAM, Intel i5 3.2 GHz, Nvidia GeForce GTX 1050 (2Gb)
MacOS Big Sur 64-bit, 8Gb RAM, Intel i5 2.3 Ghz, Intel Iris Plus Graphics 640 1536 MB
Linux Mint 19.3 64-bit, 16Gb RAM, Intel i5 3.2 GHz, Nvidia GeForce GTX 1050 (2Gb)
Raspberry pi 3, pi 4, pi 400, BBC B, C64, ZX Spectrum

Offline Derron

  • Hero Member
  • *****
  • Posts: 3675
Re: [ WIP ] Competition entry: Maze Raider
« Reply #79 on: October 14, 2018, 23:54:52 »
Ok, so for "now" I am done with the "game".

I enjoyed adding stuff here and there - once I got used to the "Godot way" of doing things. AND once I prepared a lot of stuff to "reuse". Means once my tile interaction scripts were written it only took a couple of minutes to create a tilemap item which kills the player after it has thrown him into the air and plays a little blood particle fountain meanwhile.

Until you reach that state Godot throws many, many, .. many stones into your path. GDScript and "previously freed instances" were the most annoying things.
When exporting animations as "escn" they are missing - when exporting as ".dae" (collada) then you need to make sure that your meshes are not posed during export as some "local transformations" (eg you only rotate a specific bone instead of starting with "rotate from X"). Blender displayed them as I wanted but in Godot you somehow had the hands moved into the head and such oddities ;-)
If the deadline is already visible you do not want to have to learn how such things work. It "just should work" ...

So at the end of the compo time I at least tried to create a little icon - created a proper .ico file but seems Godot neither likes that one - nor the one I created with "imagemagick". Hmmmpf.

When updating assets (eg. saving them in the project folder with your painting programs) Godot displays an updating-asset-window. Nonetheless my controls/HUD did not reflect changes. You need to click into the ressource-gui-widget of the texture and hope that it gets refreshed then. Sometimes you need to double click on the corresponding .png file in the file browser of Godot - to make it refresh. Nonetheless the "scene preview" (where you move things around) does not reflect it then. It needs a "extend"-checkbox check-unchecking to refresh.
I think there are plenty of little bugs in the Godot editor which needs to get tacklet - and which are surely mentioned already multiple times.

If you want to change the material "tint" of an item you need to:
- open its scene
- click on the mesh you want to adjust
- right-click on material and "make unique" (else you adjust other instances)
- click on the material
- click on albedo (or what you want to adjust)

It is surely also possible to do "by code" but ahem ... steep learning curve or so?



All in all: export was pretty easy (add the target, set "64bit or not", set icon (which does not work for me) ... and export it). But hey - it does not compile stuff. It assembles all assets and packs its runtime (ready made for all targets already) next to it. So I already assumed that it works "easily" (which does not say that the release works for everybody).

I can assume that certain little games work pretty nice in Godot - eg. Holzchopfs little Train-Brainer caught my attention - 3D trains? ;-D). The more "complex" (read: many different thingies) the gameplay becomes the less I would suggest a usage of Godot. As therevills wrote: you feel "dirty" or "hacking" when doing your coding in Godot. Things get messy pretty much if you are used to a different way of organizing your assets/code. Of course things would absolutely differ if I would do another little game (maybe finish it this time? ;-)) with Godot but hmm I would again only use it for 3D games as for 2D I have my beloved BlitzMax (NG) - which only misses a proper HTML5 output/target.

Maybe in some months the economy system around Godot evolved a bit and it provides "premade stuff" like Unity does. Checkout Qube's little gem/game and how fantastic it looks: in Godot you need to create all the little effects "from scratch" which just takes too much time (even if it can be fun to create certain stuff there).


bye
Ron
« Last Edit: October 15, 2018, 00:33:24 by Derron »

Offline Qube

  • Administrator
  • Hero Member
  • *****
  • Posts: 2790
  • I mostly code at night... Mostly.
    • SyntaxBomb - Indie Coders
Re: [ WIP ] Competition entry: Maze Raider
« Reply #80 on: October 15, 2018, 00:41:22 »
Oo, I like this game and it has a really nice atmosphere about it. Glad to see you managed to get it in in time :). Great work on the title screen render.

I think you and I can happily say "We learned a lot during this comp and things would be oh so different next time in our approach" :P
Mac mini ( 2018 / 2020 ), 3 GHz 6-Core Intel Core i5, 16 GB 2667 MHz DDR4, 1TB NVMe, eGPU Radeon Pro 580 8 GB, LG Ultragear 27GL83A-B 27 Inch
Mac mini (2020 ), M1 SoC, 8 GB LPDDR4, 512GB NVMe 
Commodore VIC-20, 1.1Mhz MOS 6502 CPU, 5KB RAM, VIC ( 6560 ) GPU

Until the next time.

Offline Naughty Alien

  • Hero Member
  • *****
  • Posts: 701
Re: [ WIP ] Competition entry: Maze Raider
« Reply #81 on: October 15, 2018, 02:40:58 »
..i like art style/textures for mummy..atmosphere looks really nice..

Offline Xerra

  • Hero Member
  • *****
  • Posts: 1349
  • Wait, what? This isn't Porn Hub?
    • Retro Evolved
Re: [ WIP ] Competition entry: Maze Raider
« Reply #82 on: October 17, 2018, 22:34:08 »
Derron, just a quick report that I'm playing the Mac version and on the game over screen hitting space to continue actually doesn't. I have to restart the game to play again. Not sure if it's just the Mac version that's doing this but maybe nobody apart from me has used it yet?

Offline Qube

  • Administrator
  • Hero Member
  • *****
  • Posts: 2790
  • I mostly code at night... Mostly.
    • SyntaxBomb - Indie Coders
Re: [ WIP ] Competition entry: Maze Raider
« Reply #83 on: October 17, 2018, 22:38:01 »
Derron, just a quick report that I'm playing the Mac version and on the game over screen hitting space to continue actually doesn't. I have to restart the game to play again. Not sure if it's just the Mac version that's doing this but maybe nobody apart from me has used it yet?
Yeah, I found the same issue as you. I didn't report it as I assume the Windows version works fine and most people would be playing the Windows version.
Mac mini ( 2018 / 2020 ), 3 GHz 6-Core Intel Core i5, 16 GB 2667 MHz DDR4, 1TB NVMe, eGPU Radeon Pro 580 8 GB, LG Ultragear 27GL83A-B 27 Inch
Mac mini (2020 ), M1 SoC, 8 GB LPDDR4, 512GB NVMe 
Commodore VIC-20, 1.1Mhz MOS 6502 CPU, 5KB RAM, VIC ( 6560 ) GPU

Until the next time.

Offline Derron

  • Hero Member
  • *****
  • Posts: 3675
Re: [ WIP ] Competition entry: Maze Raider
« Reply #84 on: October 17, 2018, 22:51:34 »
So in the start screen "space" does not lead you to level 1 too?
And in the game "ESC" does not lead you back to the start-screen?


In the start-screen I use:
if Input.is_key_pressed(KEY_SPACE) or Input.is_key_pressed(KEY_ENTER):
...


In the game screen I use an own solution which stores the same function but caches it - so it reacts to "was pressed".  The difference is that the first one is repeately fired (hit it and it is true for each "loop"). For a screen transition this works well as the scene changed in the next tick then. But during the game key presses need to get only fired once for "down + up".


This is my simple code (maybe one spots the bug already?):
Code: [Select]
var keys_pressed = []
var keys_was_pressed = []
...

for key in [KEY_TAB, KEY_SPACE, KEY_R, KEY_F, KEY_T, KEY_J, KEY_P, KEY_ESCAPE]:
if not keys_pressed.has(key):
keys_pressed[key] = false
keys_was_pressed[key] = false

if !Input.is_key_pressed(key) and keys_pressed[key]:
keys_was_pressed[key] = true
else:
keys_was_pressed[key] = false

if Input.is_key_pressed(key):
keys_pressed[key] = true
elif !Input.is_key_pressed(key):
keys_pressed[key] = false

...
if keys_was_pressed[KEY_ESCAPE]:
SCENETRANSITION.FadeTo("res://Scenes/Scene_Mainmenu.tscn")


bye
Ron

Offline Qube

  • Administrator
  • Hero Member
  • *****
  • Posts: 2790
  • I mostly code at night... Mostly.
    • SyntaxBomb - Indie Coders
Re: Maze Raider - The aMAZEing code a game comp entry
« Reply #85 on: October 17, 2018, 23:01:22 »
Quote
So in the start screen "space" does not lead you to level 1 too?
And in the game "ESC" does not lead you back to the start-screen?
Space works from the start screen and ESC works in game. It's when the game over window appears that space doesn't work. Also when you press 'P' in game, the game will pause but the timer still counts down.
Mac mini ( 2018 / 2020 ), 3 GHz 6-Core Intel Core i5, 16 GB 2667 MHz DDR4, 1TB NVMe, eGPU Radeon Pro 580 8 GB, LG Ultragear 27GL83A-B 27 Inch
Mac mini (2020 ), M1 SoC, 8 GB LPDDR4, 512GB NVMe 
Commodore VIC-20, 1.1Mhz MOS 6502 CPU, 5KB RAM, VIC ( 6560 ) GPU

Until the next time.

Offline Derron

  • Hero Member
  • *****
  • Posts: 3675
Re: Maze Raider - The aMAZEing code a game comp entry
« Reply #86 on: October 17, 2018, 23:40:37 »
Can replicate it.

...and fixed it.
Reason? My scene-transition is a "node". And when going "game over" I pause the game. Game pausing is done via "get_tree().paused". While I did not add my scene-transition node to the tree it somehow landed in the global tree (think everything lands there). Means when paused, the whole script was no longer processed. Which I did not "remembered" (just had a debug print when starting the fade - and it worked, so I assumed it was called correctly, ignoring the fact that it was no longer "updated" then).


So solution was to add
Code: [Select]
func _ready():
#fade in all cases
self.pause_mode = PAUSE_MODE_PROCESS

to my scene transition script.


I updated the download links to link to the new v0.8.1:
- visual indicator for pause mode is now visible too (to avoid bug reports about stuck figures)
- "space" during game over for start-screen works now

https://www.gamezworld.de/files/mazeraider/Maze_Raider.Linux64.7z
https://www.gamezworld.de/files/mazeraider/Maze_Raider.MacOSX.zip
https://www.gamezworld.de/files/mazeraider/Maze_Raider.Win32.7z
https://www.gamezworld.de/files/mazeraider/Maze_Raider.Win64.7z


bye
Ron
« Last Edit: October 17, 2018, 23:44:16 by Derron »

Offline Qube

  • Administrator
  • Hero Member
  • *****
  • Posts: 2790
  • I mostly code at night... Mostly.
    • SyntaxBomb - Indie Coders
Re: Maze Raider - The aMAZEing code a game comp entry
« Reply #87 on: October 17, 2018, 23:52:38 »
That works :)

But... I've found some more bugs :P

1.. On the title screen if you keep pressing space it repeats itself trying to fade out the screen to start the game.
2.. When playing the game if you repeatedly press "R" to restart, after a few presses the game crashes.

Gotta keep you busy ;D
Mac mini ( 2018 / 2020 ), 3 GHz 6-Core Intel Core i5, 16 GB 2667 MHz DDR4, 1TB NVMe, eGPU Radeon Pro 580 8 GB, LG Ultragear 27GL83A-B 27 Inch
Mac mini (2020 ), M1 SoC, 8 GB LPDDR4, 512GB NVMe 
Commodore VIC-20, 1.1Mhz MOS 6502 CPU, 5KB RAM, VIC ( 6560 ) GPU

Until the next time.

Offline Xerra

  • Hero Member
  • *****
  • Posts: 1349
  • Wait, what? This isn't Porn Hub?
    • Retro Evolved
Re: Maze Raider - The aMAZEing code a game comp entry
« Reply #88 on: October 17, 2018, 23:54:05 »
That works :)

But... I've found some more bugs :P

1.. On the title screen if you keep pressing space it repeats itself trying to fade out the screen to start the game.
2.. When playing the game if you repeatedly press "R" to restart, after a few presses the game crashes.

Gotta keep you busy ;D

To add to this, repeated pressing esc in the game (I know you wouldn't do it normally but ....) will just keep kicking in the fade transition.

Music and sound have stopped working in the new version. Qube did you get this too?

Offline Qube

  • Administrator
  • Hero Member
  • *****
  • Posts: 2790
  • I mostly code at night... Mostly.
    • SyntaxBomb - Indie Coders
Re: Maze Raider - The aMAZEing code a game comp entry
« Reply #89 on: October 18, 2018, 00:26:41 »
Quote
Music and sound have stopped working in the new version. Qube did you get this too?
Just shoved on my headphones and can confirm the sound and pretty great music has vanished :o - Derron!!! fixy fix fix!!
« Last Edit: October 18, 2018, 01:34:39 by Qube »
Mac mini ( 2018 / 2020 ), 3 GHz 6-Core Intel Core i5, 16 GB 2667 MHz DDR4, 1TB NVMe, eGPU Radeon Pro 580 8 GB, LG Ultragear 27GL83A-B 27 Inch
Mac mini (2020 ), M1 SoC, 8 GB LPDDR4, 512GB NVMe 
Commodore VIC-20, 1.1Mhz MOS 6502 CPU, 5KB RAM, VIC ( 6560 ) GPU

Until the next time.

 

SimplePortal 2.3.6 © 2008-2014, SimplePortal