Jump to content
IGNORED

LynxJam 2023 invitation


Igor

Recommended Posts

I just completed my entry for the jam.

 

It hasn't all the things I'd like and since it requires several (really several) hours of play to complete the game it's not completly tested, but I'll work on fixed/improved/advanced version in 2024. 

 

In the next days before the deadline I'm going to polish the game and tune the engine parameter.

 

The Release Canditate 1 of the game is on Itch.io, just in case someone wants to test it and give me some feedbacks. 

 

 image.png.43591f716c92817fc7f12cbbaba3d43d.png

 

EDIT: Updated the game to RC3, there was a severe bug in the timer handling

Edited by Nop90
  • Like 4
Link to comment
Share on other sites

5 hours ago, Nop90 said:

The Release Canditate 1 of the game is on Itch.io, just in case someone wants to test it and give me some feedbacks. 

Have play it a bit (until 11th wave I guess if number in the middle is the # of wave)
It looks fun, polished and interesting.

 

But I have some questions :

- How do you know the HP or ennemies ?

- Sometimes it says "Item found" but I don't see change in my inventory 

- It seems I got hurt sometimes but my HP are still to the max ? (edit, I sometimes lose HP as 1 character just died on lvl 13)

 

It was on RC1

Edited by Fadest
Link to comment
Share on other sites

1 hour ago, Fadest said:

I guess if number in the middle is the # of wave

That number are the points, weaker mosters gives 1 point, but other more 

 

1 hour ago, Fadest said:

- How do you know the HP or ennemies ?

You can't, but can guess them after playing a little. I planned to put the number of missed HP near the sprites, but since damages are handled in a different way for player and monsters, it looked unfair. The monster makes 1 o 2 HP damage (2 when a 2x hit appens) mostly randomly but with some changes based on the HP, if the warrior has the shield he has a greater defence factor. On the other hand the player characters damage increase with the HP. There are random numbers for the base attack and defence (the warrior when uses two swords adds 5 to the atttack random number) than the attack value and defence value are compared to define if it is a miss, a hit, a 2x or a 3x, this defines the base damage, that is increased by a fraction of the attacker HP and reduced by number calculated from the defender HP. If the result is 0 or less, it's a Blocked Hit. So the player characters can make several points of damage if they have high HP and a little bit of luck.

 

Magic spells and potions have a simpler damage system.

 

Anyway the  mosters base HP are not a secret, the green blob has 2HP, the skeleton 3 HP, the snail has 4 HP, the red little devil 6, the dwarf 10 HP,   the big ogre 15, the red beast 20, the witch 30, the green dragon 64, the evil mage 128 

 

1 hour ago, Fadest said:

- Sometimes it says "Item found" but I don't see change in my inventory

I never noticed a bug with the items, but the code is still buggy so it could be, I'll check. Pay attention to the little number near every object, if you get an object already in your inventory that number should increase. Every character has it's own inventory, so you can't check just after getting the object, you have to wait when it's again the character turn and this makes difficult to remember all the little numbers. But usually you wait for a specific object you don't have, so it's easy to spot when you get it.

 

1 hour ago, Fadest said:

It seems I got hurt sometimes but my HP are still to the max ?

I noticed this too, don't know if the damage system is buggy ot if I left some miss/blocked attack without a message on the screem. Another thing to check.

 

At the moment I released RC3, i made a little change to the monster attack animation (only flashing, no more blinking) and fixed a severe bug on the timer system, some monsters were never attacking. 

 

 

The biggest thing I don't like is the monsters and items selection: the key directions are not coherent with the selected item/monster position change, but pressing several time the same key it's possible to reach all the possible choices, so I'll fix this in a future version.

 

Edited by Nop90
Link to comment
Share on other sites

Heya!

 

I'm bit late to the party, but here is a sneak peak of my entry! I really love the "shared tileset" theme for this year, it's very unique and also it helps to have a better looking game for people who can't draw like me :)!

 

I'm creating a small runner game titled "Running Knight". You control a Knight that is always running in a maze full of deadly pillars and treasure chests. How long can you run? The D-Pad moves the Knight, while holding A or B allow you run instead of walking.

 

running-knight.gif.f36032883021c3c6166c0f644e370950.gif

This is a simple game as I have very limited time on my hands sadly, but it ends up taking more time to develop than expected (as usual!).

 

I also had a big reminder that testing on real hardware is VERY important! At first, I was aiming at making a 60fps game. I did some early test on my Lynx, but as the project went, I did test solely on emulators (Handy v0.98) to be able to fine-tune the game faster. With up to 13 moving gameplay sprites (1 player + 12 chests/pillar), 6 background scrolling sprites and 7 sprites to display the score on a single sprite chain, I thought that everything would be OK. And on emulators it was. So I even added 6 "eye candy" sparks sprites (coins / pillar pieces) to the chain.

 

When I tested again the game on real hardware, it was a disaster. The game started at 60fps, but then quickly dropped to 30-40 fps maximum. I tried to optimize, but as I wanted to keep many pillars (with collision detection...) and the eye candy onscreen, I finally opted to make a 30 fps game (better a do 30fps constant game than a lagging variable fps game :p). It still plays smooth, and I hope people will enjoy the game even at 30fps.

 

But yeah, big reminder (if needed) that, in lack of cycle-accurate emulators, test often on real hardware is mandatory!

 

Last but not least, I shared a beta version of the game on my patreon, as I do with all my projects, I hope it's not breaking any "don't make public before jam ends" rule.

Edited by drludos
  • Like 7
Link to comment
Share on other sites

1 hour ago, drludos said:

esting on real hardware is VERY important!

Did you test it on Handy or Felix?

You should test it on Felix. It comes very close to the hardware.

Only math operations are a bit to quick.

Edited by 42bs
  • Thanks 1
Link to comment
Share on other sites

On 12/12/2023 at 5:33 PM, Fadest said:

Sometimes it says "Item found" but I don't see change in my inventory 

You where right there was an error, but it's fixed now. For the 'false  attacks' I can't find anything in the code.

 

Other than this, in the new release I assigned a starting value of 7 arrows to the elf (previously was 2) because it seems the weaker member of the party. Also raised a little the probability to find new arrows.

 

If there aren't other reports of bugs RC5 will probably be the final version because in the next days I'll be busy with my job. 

Edited by Nop90
Link to comment
Share on other sites

5 hours ago, 42bs said:

Did you test it on Handy or Felix?

You should test it on Felix. It comes very close to the hardware.

Only math operations are a bit to quick.

Thanks for the tip, I'll try it!

 

Handy is great emulator and I love it, but I wasn't aware of the large gap in accuracy it has with an actual Lynx until this project. I knew Mednafen is way faster than a real Lynx though (making it very useful to record gameplay videos :)

  • Like 1
Link to comment
Share on other sites

I don't own a Lynx and normally wouldn't code for something that I don't have, but I entered the jam to get a taste of developing for the console. I ended up doing a scrolling shooter which probably has a lot in common with @drludos's entry. While it runs fine on Handy, Mednafen and Felix, it sounds like I'm going to be in for a disappointment when it comes to real hardware.

 

I used 16x16 pixel tiles for the background, 7 rows of 11 tiles. The player, bow, 8 x arrows, 20 x enemies, 8 x axes, 5 score digits and 3 life indicators total to 123 SCBs which I chain together.

 

Monitoring resource usage by modifying the palette, this is what I see on Felix when the screen gets busy:

felix.thumb.png.bda1ea19f98d0b58c9edf230bd8c67e1.png
The white area represents the SCB processing, the green area the game logic. It returns to grey when the game logic has completed, so there are still some cycles free before the next frame.

 

Attached is a test build with invincibility which continually repeats the attack from the screen shot. If anyone has the time to try it on a real Lynx I'd appreciate hearing how it performs. I will prepare myself for the bad news!

 

I've not finished the game yet and don't think I will have time to convert it to 30Hz as well.

 

Thanks,

Paul

 

DUNGED.O

  • Like 2
Link to comment
Share on other sites

When the fourth group of monsters enters the screen the rendering time increases over the limit and the  the games slowes down. Reducing the monsters on the screen could be a quick fix to submit someting to the Jam

 

To have a faster rendering time you should chain the sprites, I had to face this problem some years ago (

)

  • Like 1
Link to comment
Share on other sites

Just now, Nop90 said:

When the fourth group of monsters enters the screen the rendering time increases over the limit and the  the games slowes down. Reducing the monsters on the screen could be a quick fix to submit someting to the Jam

 

To have a faster rendering time you should chain the sprites, I had to face this problem some years ago

Thank you for checking.

 

I will reduce the enemies down to a maximum of 15 and proceed with that. I already chain all the sprites together and only call tgi_sprite once per frame.

 

There are a couple of optimisations which I haven't made. I'm used to coding on the 6502 and I missed that the 65SC02 has a jmp (abs,x). That would make my state machines quicker but I would have to swap my usage of X and Y in a lot of places and I would make too many mistakes. I can optimise the arrow collision detection by sorting them, it's just a question of time...

 

Link to comment
Share on other sites

8 hours ago, playsoft said:

Thank you for checking.

 

I will reduce the enemies down to a maximum of 15 and proceed with that. I already chain all the sprites together and only call tgi_sprite once per frame.

 

There are a couple of optimisations which I haven't made. I'm used to coding on the 6502 and I missed that the 65SC02 has a jmp (abs,x). That would make my state machines quicker but I would have to swap my usage of X and Y in a lot of places and I would make too many mistakes. I can optimise the arrow collision detection by sorting them, it's just a question of time...

 

Excellent you're trying this without even owning a Lynx, that's great! I found the number of enemies overwhelming so reducing them will make a good difference.

It runs well on real hardware. Would be good to see a variety of enemies!

  • Like 1
Link to comment
Share on other sites

15 hours ago, 42bs said:

Some WIP 🙂

No score, no finish.

 

gj23.o 6.55 kB · 7 downloads

Cool! I'm impressed to see so many enemies moving onscreen at the same time :).

 

Gameplay wise, it's a nice take on a classic game. I love that there are a lot of enemies. I don't know what you have planned for the next steps, but maybe it would be more challenging if the enemies moved faster as we destroy them, and could shoot back at the player (like the original game :)).

Link to comment
Share on other sites

I have been busy with some gigs with my band, parties etc. Still nothing even compiles for the Lynx... Sigh...

 

Edit: now it compiles - but I have been so much playing around with other systems that I forgot that I never implemented a conio driver for the Lynx. Hmm. Write conio for the lynx or translate everything to tgi?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...