Log In  

Cart #50452 | 2018-03-15 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
137

Suzie and Bob are trapped in a merciless world. Can you fight your way out?

Gameplay Elements

  • Random maps
  • Multiple biomes

  • Multiple enemies
  • Multiple weapons (but one at a time!)
  • Loop-based difficulty
  • Supports keyboard/mouse

Controls


Keyboard:

  • arrow keys: move & gun direction
  • bttn 1: fire & lock direction
  • bttn 2: pick up weapon

Mouse (selected in option menu):

  • arrow keys: move
  • mouse: gun direction
  • left click: fire
  • right click: pick up weapon

Note: any resemblance with a famous Vlambeer game must be purely accidental...

Changelog


1.2:

  • fixed: woobly sprites
  • fixed: actors stuck on corners
  • fixed: warp in/out effect
  • changed: impact feedback
  • changed: health upgrade on loop

1.1:

  • fixed: unexpected god mode
  • fixed: boss hp
  • fixed: boss attack
  • changed: tweaked game speed
  • change:balanced high level gameplay (loop)

1.0:

  • preview version

Dev Log


2nd finished game (last was Thunderblade). Took 4 months to complete & refine.
Un-minified source available on Github:
freds72/pico8/carts/nuke.p8

Tech Highlights
JSon Rules!
All entities (actors, weapons, particles, levels) defined using json (worth 3500 tokens!). A lightweight parser (450 tokens) converts strings into lua tables.

Entities are created using a parent template with support for:

  • lua references
  • random values
  • method & attributes override

Rotating Sprites
Player weapon (and couple of other sprites) are rotated in real-time using an optimized sprite routine. It is fast enough to allow ~10+ sprites on screen (before tanking FPS!)

Performance
An actor map is maintained each frame. It allows immediate bullet/actors lookup.
Only player/npc collisions are checked to ensure player cannot zip through enemies.

A-* path is refreshed for a single npc per frame. It ensures a large number of npc’s can be created without too much cpu stress.

Sprites are added to buckets matching their y pixel coordinate.
Saves both cpu and tokens as no global sort is required :]

Toolchain
Cart is minified using picotool (19k compressed). All json attributes are replaced by their short equivalent using output from minification script:
cat nuke.p8 | minify | replace > nuke_mini.p8

Missing In Action:

  • RPG aspects (upgrades/xp/abilities...)
  • Good music (for total lack of musical skills!!)
  • Scoreboard

Credits

P#48516 2018-01-24 15:49 ( Edited 2018-03-15 21:52)

Damn, this is awesome! I had a lot of fun figuring out strategies and whatnot, and finally beating 1-4 (I've never played the original).

P#48517 2018-01-24 17:16 ( Edited 2018-01-24 22:16)

I hate to sound like an idiot, but I can't figure out how the controls work.

P#48533 2018-01-25 04:05 ( Edited 2018-01-25 09:05)

Added a controls section :)

P#48536 2018-01-25 05:39 ( Edited 2018-01-25 10:39)

Ah! I was wondering why the mouse wasn't working, even though it appeared to be in the gif. Thanks!

P#48539 2018-01-25 05:57 ( Edited 2018-01-25 10:57)

Okay, now that I can play properly, I must say: fantastic game. :)

I did notice mobs getting stuck on walls at times. You might have an off-by-one issue in your a* implementation.

P#48540 2018-01-25 06:02 ( Edited 2018-01-25 11:02)

I’ll probably start another thread on the a-* bug. Seems to be linked with rounding issues (I have a standalone repro sample).

P#48542 2018-01-25 06:30 ( Edited 2018-01-25 11:30)

wow! Nuclear Throne is one of my favorite games. What a trip to find an homage of it here. Great job capturing the style of the original in such a tiny package

P#49582 2018-02-23 21:00 ( Edited 2018-02-24 02:00)

Tks - How far did you go?

P#49598 2018-02-24 07:53 ( Edited 2018-02-24 12:53)

This is very nice. How long did this take to make?

P#49599 2018-02-24 08:10 ( Edited 2018-02-24 13:10)
1

Something like 4 months, about 1h/day (a good deal of it during commute time).

P#49601 2018-02-24 09:29 ( Edited 2018-02-24 14:29)

Now that's making great use of otherwise-wasted time.

P#49626 2018-02-24 21:58 ( Edited 2018-02-25 02:58)

Very nice. Great use of commute time there.

P#49679 2018-02-25 17:54 ( Edited 2018-02-25 22:54)

This is one of the best Pico 8 game I've played. I really love the gameplay, and the music is nice too.
There is just a tiny problem, in the snow biome, the ammo counter is almost invisible when it's over the snow. But I guess you would just have to add a border to the text, so it's not a big deal. And another thing is that when you don't have any ammo left, all you can do is die, there's no other option.
But it's still an awesome game!

P#62066 2019-02-19 10:41

maybe don't spawn me inside the enemy? that would be nice.

P#62844 2019-03-16 19:21

@ZOSK: be out of ammo is actually part of the game tension :)
As for the counter, I know, howerver I am completely out of tokens/compression space on that game :/

@binarycat: it can happen, however you have something like 2s of invicibility when level starts. Make good use of it!

P#62852 2019-03-17 09:43 ( Edited 2019-03-30 21:20)

Wow, now this one is epic! Very nice work!

P#63255 2019-04-05 09:05

Old news by now, but thanks - how far did you go?

P#63257 2019-04-05 11:16

This game is awesome. I love the simplistic shooter style.
@freds72: I think it would be good however to include a weapon you can use without needing ammo (like a knife) so that you don't die when u run out :\
Maybe its part of the game tho. oh well.

P#89213 2021-03-19 15:12

like make it a truly balanced game?
nah!
seriously - the game is ‘difficult’ to change, but you are right

P#89220 2021-03-19 17:38

How do you make the script that makes the gun look at the mouse?

P#91850 2021-05-12 16:32

Sometimes at the beginning of the game, I spawn near a lot of enemies. Maybe add a difficulty option, make your health bar 13, make it so when you get the health box, you gain 5 health, and make the levels have fewer enemies depending on the difficulty. It's still a great game btw :D

P#91892 2021-05-13 15:19 ( Edited 2021-05-13 15:19)

Is that a DooM reference I see on level 4? Don't know if it actually is.

P#92218 2021-05-20 12:25 ( Edited 2021-05-20 12:25)

red exploding monsters? no - more a try to have enemies with a different attack mode than just firing
more Serious Sam in a way!

P#92221 2021-05-20 13:42 ( Edited 2021-05-20 13:43)

umm how do I download this, im new to this website.

P#94420 2021-07-03 19:33
1

I am hoping for updates, it is cool

P#98040 2021-09-30 15:20
1

characters and bosses would be cool

P#100264 2021-11-17 12:53
3

Cart #buttonfix-0 | 2021-11-18 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

this allows esdf controls

P#100353 2021-11-18 18:50

ah thank you

P#100360 2021-11-18 19:17
1

aw! nice - I have that in my backlog, cool to see such mini mod!

P#100401 2021-11-19 08:17

really hoping for mutations
(also, i would really love to see char choices)
I could design the gimmics if you want

P#100413 2021-11-19 15:18

game is at 8192 tokens and 100% compression limit.
so unfortunately unless I go over a massive refactoring, little chance to add new features (will still see if some recent pico changes could help…)

P#100418 2021-11-19 15:54

even with picotool?
wow

P#100420 2021-11-19 16:06

it would also be nice if there were chests for ammo, (rads) and guns
also, a 5 ammo type system would be great, you wouldn't have to count ammo for each gun, just the player's ammo

P#100422 2021-11-19 16:23

do you have the unshrunk code?

P#104746 2022-01-10 14:21

link to source code under Dev Log section.

P#104749 2022-01-10 17:19

cool

P#104753 2022-01-10 18:12

[Please log in to post a comment]

Follow Lexaloffle:          
Generated 2024-03-19 06:56:22 | 0.055s | Q:80