Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

877645 Posts in 32875 Topics- by 24313 Members - Latest Member: CWolf

May 20, 2013, 05:19:00 AM
TIGSource ForumsDeveloperFeedbackDevLogs"Bugger!" -- the EXE files
Pages: 1 [2] 3
Print
Author Topic: "Bugger!" -- the EXE files  (Read 4907 times)
wilbefast
Level 1
*


I am the cat who walks by himself.


View Profile WWW
« Reply #15 on: March 04, 2011, 05:29:47 AM »

edit: New video Grin this is me talking about some of the new stuff that's been added. There should be a download up on indieDB some time this weekend!

---

Coolness  Smiley I ran into a lot of segfaults while setting up the memory management architecture, and your personification is right on the money - bravo Beer!
So: I'm thinking this guy could spawn a little red laser-targeter which would follow you around: stay still till long and he'll get you in his sights and fire. I have this guy down as a flyer, which should help him keep out of range. He could also stab you if you came too close.

TypeNameRanged?Combat?Flies?Wanders?Flees?Chases?Notes
Fodder"Rounding Error"NoYesNoNoNoYesShoggoths
Fodder"Floating Point"NoYesYesYesNoYesCharge attack (Doom lost soul)
Mid-range"Overflow"YesNoNoYesYesYesAttacks/death create lava
Mid-range"Infinite Loop"YesNoNoYesNoNoContinues firing until interrupted
Dangerous"Segmentation Fault"YesYesYesNoYesYesSniper sight

The pattern here is for high-level enemies to be ranged and low-level ones to be combat, but then I suppose that makes sense because projectiles are harder to avoid combat attacks.  Still, if the Loop was combat we'd have something more balanced, and one archetype that we don't have on the board yet is a combat attacker that moves towards you while firing projectiles.

Don't worry about the image quality. Since these concepts are just first-passes they don't need to be perfect. Quite the opposite: they should be fairly quick and dirty since all they need to do is to give us some idea of what the final take might look like.
Even so, they might be a cool sort of thing to post on various blogs/pages to show people that there's progress in the art department  Wink let me know if/what you'd be happy to have displayed.
Logged

Toom
Level 3
***


You have to tell me if you're a cop.


View Profile WWW
« Reply #16 on: March 04, 2011, 07:58:55 AM »

A fast, high-damage melee enemy can be exceptionally dangerous, though - they're larger than projectiles, which makes them harder to dodge in tight spaces, and they can track the player, which I'm assuming most projectile attacks won't.

Looking through that list of exotic bugs you linked me, I was struck be an idea for a high-level enemy, but I don't know how easy it'd be to code its behaviour. How would you feel about including a Heisenbug, possibly - due to how much of a pain in the arse it'd likely to be for the player - as a miniboss? It'd keep a consistent graphical appearance, but would switch between other enemies' behaviours as you attacked it.
Logged

I'm gonna beat yer ass wit dis moon tree!
wilbefast
Level 1
*


I am the cat who walks by himself.


View Profile WWW
« Reply #17 on: March 04, 2011, 02:37:58 PM »

It's true that, thanks to its charge attack, the FPE become a sort of pseudo changed enemy. I could have it have them keep their distance till ready to swoop and then dart away when they're finished  Evil

The full list of possible bugs started off looking like this:

LevelNameRanged?Combat?Flies?Wanders?Flees?Chases?Special
Fodder"Rounding Error"NoYesNoNoNoYesNONE
Fodder"Floating Point Exception"NoYesYesYesNoYesCharge attack
Medium"Overflow"YesNoNoYesYesYesAttacks/death create lava
Medium"Infinite Loop"???????
High"Segmentation Fault"YesYesYesNoYesYesSniper sight
High"Dead Lock"??????Paralysing attack
High"Race Condition/Starvation"???????
High"Desynchronisation"??????Freeze (become invulnerable) and/or teleport
Rare"Bohrbug"???????
Rare"Mandelbug"???????
Rare"Heisenbug"???????
Rare"Schrodinbug"??????Friendly unless attacked
Boss"Flying Spaghetti-code Monster"YesNoYesYes???
Boss"Kludge"NoNoYesNoNoYes?
Boss"Bugger"NoNoNoYesYesYesSummons enemies
?"Millenium Bug"???????

NB - Bohrbug's and Mandelbugs aren't well defined: they're basically just "complicated bugs". I had them down as generic, tough enemies, probably one ranged and one combat.


I cut it down mostly because of the amount of art assets that each one needs: the code is fairly reusable and can be generalised for as many enemies as necessary. Indeed, the only thing that needs to be specifically coded is whatever is in the last column  Wink
So I'd be more than prepared to encode special behaviours for as many bugs as you want to make sprites for Beer!

Speaking of which I had a thought: if we want 4 directions, better to do NE and SE and then mirror them to get NW and SW. N and S can't be mirrored so aren't as worthwhile when you think about it  Cool
Logged

Toom
Level 3
***


You have to tell me if you're a cop.


View Profile WWW
« Reply #18 on: March 05, 2011, 08:40:03 AM »

The Millennium Bug should look fucking terrifying but not actually do anything.
Logged

I'm gonna beat yer ass wit dis moon tree!
Toom
Level 3
***


You have to tell me if you're a cop.


View Profile WWW
« Reply #19 on: March 07, 2011, 06:02:43 AM »

Right, my friend Sam has offered his services as a Windows compiler-monkey - or to at least have a little look - so if you send me the stuff you want compiling I'll forward it to him (e-mail's in my profile).
Logged

I'm gonna beat yer ass wit dis moon tree!
eclectocrat
Level 5
*****


Most of your personality is unconscious.


View Profile WWW
« Reply #20 on: March 07, 2011, 06:45:40 AM »

I suggest that segfaults blink in and out and are really hard to pin down. They should also have a nasty boss level big brother, multithreaded segfault or "access violation in thread 2".

Multithreaded bugs like Priority Inversion and Deadlock need to be killer hard and elusive. If your just about to defeat one, they should like teleport away or turn into a kitten just to mess with your head.

*shivers* Oh god, the horror, THE HORROR!
Logged

I am eclectocrat.
I make Mysterious Castle, a Tactics-Roguelike (TIGSource devlog).
_Tommo_
Level 7
**


frn frn frn


View Profile WWW
« Reply #21 on: March 07, 2011, 07:25:16 AM »

To me the "scientist-named" bugs are a bit too generic, you just need to use C++ to stumble on much uglier beasts  Giggle

-miscast: when you C/static-cast something to the wrong type. Half of the object is good, half of the object is evil. What about some coin-flipping mechanic here!

-nullpointer: how can it be missing! It could be a simple fodder, maybe.

-garbage pointer: uninitialised pointers that contain garbage but do not crash your program. It spawns segmentation faults?

-library inconsistency: some third party library has a bug in it, and it's closed source. Don't know what monster this should be.

And, overflow has just too little space here, it could use a split between
-numeric overflow: a fodder that becomes really big or really small at will

-stack overflow: if not killed in a certain amount of time, it grows until explodes

-buffer overflow: the one with the lava.
Logged

wilbefast
Level 1
*


I am the cat who walks by himself.


View Profile WWW
« Reply #22 on: March 07, 2011, 08:10:47 AM »

Right, my friend Sam has offered his services as a Windows compiler-monkey - or to at least have a little look - so if you send me the stuff you want compiling I'll forward it to him (e-mail's in my profile).
Coolness  Grin I've been having some problems with Windows 7, which annoys me because everything works fine on Ubuntu  Angry Still, this new alpha has been successfully compiled for Linux and Windows (still need a Mac compiler-monkey).
Hope your friends mine is not blown by how... um... awesome my coding is  Facepalm

*shivers* Oh god, the horror, THE HORROR!
This game emerged from and has fed my need for a way of releasing my programming frustrations - eg: "DIE SEFAULTS!! DIE!!!"
Needless to say each enemy should mirror the behaviour of the bug it's based on (=> segfaults come from nowhere and kick your ass in a microsecond). But this means I'm hesitant to include many concurrent programming bugs because I haven't done that much concurrent programming  WTF
Still, multi-threaded bugs will certainly be of the high-tiers if they're added, and a pain in the ass to kill  Wink

To me the "scientist-named" bugs are a bit too generic, you just need to use C++ to stumble on much uglier beasts  Giggle
For the record Lava is actually "uninitialised memory" and Bottomless Pits are "unallocated memory / NULL" Durr...? I was also considering adding Mallocs as NPCs that you must rescue from cages (geddit?)

It's true that segfaults can have a huge number of causes (array out of bounds, following/deleting a NULL/uninitialised pointer, etc). Whatever the case it comes down to an illegal memory access, and "Segfault" sounds more... sexy  Tongue Still, maybe it should be broken down a little: certainly I agree that there's little difference between the "theoretical in-joke bugs"...

I totally agree for the buffer overflow, but I was thinking "arithmetic/numeric overflows" could spew up "rounding/numeric instability" errors  (our current fodder enemy) rather than actually shooting at you. As for the stack overflow - it's always hard to make things grow in 2D Huh? I was thinking it could just be the "normal" version of the three, dealing damage rather than doing weird shit  Undecided
Logged

Toom
Level 3
***


You have to tell me if you're a cop.


View Profile WWW
« Reply #23 on: March 07, 2011, 12:00:32 PM »

Remember, if you want more complex high-level bugs as enemies, you're going to have to explain them in layman's terms before I can design them.

I've been mega busy these last few days, but I'm aiming to have the first round of monsters completely designed by Thursday, after which I'm going to dive straight into in-game graphics for awhile.
Logged

I'm gonna beat yer ass wit dis moon tree!
Toom
Level 3
***


You have to tell me if you're a cop.


View Profile WWW
« Reply #24 on: March 08, 2011, 06:24:37 PM »

Um, when I said the above, I miiiight have forgotten about my evening classes, so don't hold me to it :/. Meanwhile, here's something!



Ladies and gentlemen: The Kludge.

The idea I've had for this dude is for him to go through a few different transitions; the form above is either his starting or second form, after he's taken a bit of a kicking. The idea is that he starts out looking a bit rough, but still sturdy. Then as you progress, it becomes more obvious that he's cobbled together from a bunch of bits that don't really work together; his final form, after
the fight with the Flying Spaghetti-Code Monster when he double-crosses the player, has his armour disintegrate almost completely, leaving something akin to a smaller, faster, more mobile FSCM that's been incubating inside the Kludge and is now using the remnants of his armour as a crude exoskeleton/throne/whatever.
I'll get concepts of these later forms done...um, at least when it isn't 2:30am anymore.
Logged

I'm gonna beat yer ass wit dis moon tree!
wilbefast
Level 1
*


I am the cat who walks by himself.


View Profile WWW
« Reply #25 on: March 09, 2011, 12:23:55 AM »

Great idea, and great concept My Word!
How about a ground version that tries to escape when its armour is destroyed, and which you have to corner?

I've been trying to... euh Who, Me? clean up my code a little before showing it to your friend. Not that I expect him to go through the whole thing but still - it's worth doing either way. I'll send you the link now  Wink

I'm also thinking very hard about the fog of war / line of sight effect I want to do. I've seen a lot of 2D games that do "realistic" light and shadows but I may just go for a "tile by tile" approach  Huh? Any recommendations would be most welcome!
Logged

wilbefast
Level 1
*


I am the cat who walks by himself.


View Profile WWW
« Reply #26 on: March 14, 2011, 07:48:40 AM »

Shadows are more or less done now - all they need is a little optimisation and we'll be finished Beer! Get ready for an awesome Youtube
Shadows iteration montage! Hand Point Left CoolHand Metal Right

How's the artwork coming Toomie old chap?
Logged

Noyb
Level 9
****


Klik & Play Masochist


View Profile WWW
« Reply #27 on: March 14, 2011, 08:11:10 AM »

Have you ever run across the triple fault? It's what happens when an error occurs that's so bad, it throws an error not only in the error handler for that error, but also in the error handler for the error thrown by the error handler. It normally only shows up when coding operating systems, and halts the entire system. I dare not imagine what kind of foul beast this could be.
Logged

wilbefast
Level 1
*


I am the cat who walks by himself.


View Profile WWW
« Reply #28 on: March 14, 2011, 12:45:38 PM »

Have you ever run across the triple fault? It's what happens when an error occurs that's so bad, it throws an error not only in the error handler for that error, but also in the error handler for the error thrown by the error handler. It normally only shows up when coding operating systems, and halts the entire system. I dare not imagine what kind of foul beast this could be.
Could find  Grin A three-headed monster no doubt. Such titans can only be found in the Kernel though, where feeble programmers dare not tread...

When I first started thinking about the story I read this blog post:
http://blog.wolfire.com/2010/04/Saving-the-world-one-plot-twist-at-a-time

I was thinking it could go something like: "you're looking for a bug in a program, you realise that the cause of it is not the program but the library, then you realise that the bug is actually in the operating system, and eventually end up in the kernel itself for a climactic battle".

You and I should go on a bug-safari some time Noyb: try and bring down some big game. Yeehaa   Hand Fork LeftWell, hello there!Hand Knife Right
Logged

Halcyon
Level 2
**



View Profile
« Reply #29 on: March 14, 2011, 11:52:52 PM »

Cool idea, with all the time I spend debugging my code I should be an expert at this game.
Logged
Pages: 1 [2] 3
Print
Jump to:  

Theme orange-lt created by panic