Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411511 Posts in 69375 Topics- by 58430 Members - Latest Member: Jesse Webb

April 26, 2024, 02:42:23 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogs"i.M.A.G.E. Zero"
Pages: 1 [2] 3 4
Print
Author Topic: "i.M.A.G.E. Zero"  (Read 19626 times)
baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #20 on: May 27, 2010, 02:01:27 PM »

 Shrug I notice a lot of people here don't bother posting DevLogs until things are in an already-playable state... dunno if that's the norm, but I'm logging as much of the development process as possible, if nothing else, to give a point-to-point way of getting from idea to complete project. Or at least, that's what I'm hoping this amounts to!

Well, anyways... today I simply used my LiveJournal to make a list of the various actions, reactions, and AI that I *expect* to have to script for the humanistic characters. Also, there's a rule once you've been dev'ing and tinkering for awhile, that you take what you expect, multiply it by 250%, and that's about what it ends up amounting to.

So... that's where I'm at today. I'll probably take a break for a couple days, now - it's a good idea to do that every so often, things will "come to you" that you might not have thought about while you're grinding. Sometimes easy touch-ups, ways to fix things, or a method of simplifying code to make your project kick off quicker!
Logged

mokesmoe
Level 10
*****



View Profile WWW
« Reply #21 on: May 27, 2010, 11:30:30 PM »

Shrug I notice a lot of people here don't bother posting DevLogs until things are in an already-playable state... dunno if that's the norm, but I'm logging as much of the development process as possible, if nothing else, to give a point-to-point way of getting from idea to complete project. Or at least, that's what I'm hoping this amounts to!
There's really two types of Devlogs: People talking about the making of their game (You are this one) and people posting demos and explaining updates.

People like playing demos, but if your game is in a mostly prototype stage, the first one works just as well. To contrast, the standard platformer with a neat gimmick type games wouldn't work very well with the second.
A mix of both would probably be the best, but not all games are suited for both.
Logged
baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #22 on: May 29, 2010, 07:04:21 PM »

More designer-reminders, regarding the "Adventure" aspect of the game:

I think I WILL go with the vertically-offset columns of rooms idea, as the rooms approach will clearly differenciate it from the platformer/race'n'chase aspects. Wrapping the dungeon around the sides/top and bottom will allow it to assume just about any shape imaginable, so long as barriers are constructed through the center of "the design map." So the lower passage to the side of one room will enter you in the top-passage of the neighboring one, in almost a beehive-like pattern; and vertically neighboring rooms can be adjoined by staircases.

Each of the side-passages will also be open by default, then modified to be shut with locked doors, shutters, solid walls, or blastable walls. Also bear in mind, *most* of these openings WILL be bombable, but not necessarily lead to you anywhere you couldn't get normally, and the bombs themselves will be more uncommon - so they can be used, in conjunction with the compass, for instance, to open shortcuts (think right branch of LoZ's Level 3); or to discover otherwise-concealed treasure rooms (which simply is a horde of power-ups). So far, only the "outer perimiter" of the dungeon, and perhaps the walls surrounding bosses/exits/key items are planned to be "permanent," and even the key items/boss rooms are still "maybes."

Variables that will factor into the rooms' contents include sets of enemies (Zelda-inspired crowds of them) and perhaps Spelunky-inspired traps (like the Arrow/Idol traps) as well (maybe some switch-induced-damage-spikes, or a laser-like door-shutter and/or enemy-spawner effect, too). This may also include trap doors that will drop you down a room, some of which may be concealed intentionally with push-blocks.

Enemy groups include:
-3 of a kind
-7 of a kind
-10 of a kind
-2/type + 1/type + 1/type + (1/any of types)
-3/type + 2/type + 1/type + (1/any of types)
-4/type + 2/type + (1/either type)
-Boss/Senior
-2 of differing Boss/Seniors
-3 of same Boss/Senior

Doors include:
-Key locked
-Pushblock locked
-Battle/clear screen locked
-Whistle-locked
-Secret passage (foreground effect only)
-Concealed with bombable/destructable blocks

Some of these conditions, like pushblocks, will also result in items appearing.

The key system will likely be similar to FPS keycards, where there's one key that opens each of the color-corresponding doors; however the colors will randomize, so there's no obvious order to consistely go in. Clearly, there will be *some* minor pushblock puzzle-rooms to navigate through; but that will take a bit to produce correctly, yet keep interesting.

I'm also brainstorming for other interesting whistle effects, too; that may not have necessarily originated in the Zelda games, but not necessarily like, "turn this into PGC Aquaria," either.

Yes, I could tie in the musical-gaming and variable "signature sound" influence here, which I may in sound effects; but I don't think I'm gonna do that to the gameplay this time. "Full-circle" as that may be. Maybe in the anticipated follow-up to fine-tune and perfect the formula.


EDIT: This may also include the occasional, convoluted "pipeline room," a pipe-maze like feature that interconnects the different openings of the room in crazy directions, making dungeon-navigation more interesting and exciting. So you go in one way, it gives you a slight glimpse of it's twisty pipelines, and then spits you right out another side. Smiley
« Last Edit: May 29, 2010, 07:16:58 PM by baconman » Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #23 on: May 31, 2010, 12:28:43 PM »

Basic tilework today, posted in the Creative - "What I Made Today" thread.

And I'm working on a name for the game, now. I was kind of leaning towards "T.I.G.E.R." and fitting it to something (The Infinite Game Endlessly Replayable; The Indie Gaming Enjoyment Resource), but not quite sold on it, yet. Suggestions?
Logged

mokesmoe
Level 10
*****



View Profile WWW
« Reply #24 on: May 31, 2010, 05:38:25 PM »

I think I.N.D.I.E. would be better, but it really depends on the best acronym you can come up with.
Logged
Zaratustra
Level 7
**



View Profile WWW
« Reply #25 on: May 31, 2010, 07:57:44 PM »

G.A.M.E.
Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #26 on: May 31, 2010, 10:02:36 PM »

Well, it doesn't have to be an acronym... but those can potentially work. "Game About Multiple Evolutions" or "...Experiences" could work, for instance. Maybe "Gaming Around Many Evenings" or... something will click, I just gotta stop hammering it. I.N.D.I.E. is cool sounding indeed, but it's hard to wrap anything around... "Independent Non-Descriptive Infinite Exploration?" (Squeezing "Unlimited" in the title would make something like that "U.N.D.I.E." ...and "System" at the end would make it "U.N.D.I.E.S." Naah.)

Roll Eyes

A couple more trap and obstacle ideas sprung to mind... and the more I think about switches and springs being the same sprite, the more delightfully fun (and sometimes malicious) ideas I get...

Cheesy
Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #27 on: June 02, 2010, 08:06:09 PM »

Still tossing around name ideas. "i.G.A.M.E." is kinda there as well, but way too cliche right now. Close, but not quite "it." (EDIT: "i.M.A.G.E." maybe? As in, Indie/Infinite Multiple Adventure/Aspect Gaming Experience/Engine? That's really, really *painfully* close to what I'm thinking about...)

I've been thinking more about the "whistle implementation" of the adventure games, and I think I'm gonna ditch the keys idea, in favor of having a 3-tone "tune" screen, so you can take something like an enchanted guitar, and use it to enter "keysongs" that correspond with different symbols, which will then serve the basic purpose of the whistle AND the keys. One symbol = an entire songcode, not like "play these notes;" though there will also be a room in which you hit a switch and it will play the song/sequence for you, and illustrate the notes visually with them. (The three tones correspond with your J/K/L powers, wherever they're mapped to.)

The other cool kicker is that many of these tunes are ones that should be recognizable, and many others may be a homage to Bemani games. And that playing different (IE: wrong) tunes can result in other devious things, like setting off various traps; or occasionally a beneficial effect as well (but very rarely!). Later levels will introduce more/longer songcodes, but each game will only use 4 of them (maybe a 5th for a secret power or recover/once-per-day kind of code - but implicitly hidden). Some of the symbols (associated with hidden items/passages) will be considerably better-hidden than obvious ones needed to progress.

Here's a few samples of the tune-codes I have in mind, see if you can recognize a couple of them (1=low note, 3=high note):

1-1--2-3--2
1-2-3-1-1-1
1-3-2-1-3-21
3-2-1-23-32-1
21-1-21-2-3
33-233-13323
3-32-32-32-12---3
3232132123123
123--3-123--2-123--1
2323212-23212

(exact timing isn't essential btw, it's all about hitting the songcodes in the correct order)
« Last Edit: June 02, 2010, 08:33:49 PM by baconman » Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #28 on: June 03, 2010, 07:23:12 PM »

There's a bit more progress on the song-adjustment code - the part that takes the 8-note strings and makes them more tunelike, but alas, I haven't enough time to elaborate on that now. The Waltz modifier may actually be an okay (or even better?) basis for the Blues mod, just changed around a bit in execution (more looping/quicker tempo), too. In fact, it's quite a busy week at work, so I'm probably down to about 4 hrs/day in off-time, with which to do other things like bathe and eat; and maybe play a little of something here and there. I'll probably post more about it later.
__________

In other notes, I'm also brainstorming and designing a few widgets for each region, and thinking of some obstacle arrangements to correspond with different powers. Earlier levels will usually use one of each, where later ones complexify them by sticking two or more elements together. I'm also looking into measuring characters' abilities (based on their powers), and having parts of them positioned strategically, so that later regions will have a less forgiving margin of error than earlier ones. So, in concrete, computable terms:

Zone 1 = 6 (= Margin of error, in half-tiles)
Zone 2 = 5
Zone 3 = 4
Zone 4 = 3
Zone 5 = 2

DeadZone = 1

This will mostly reflect in tricky jumps, for now, but I'm also looking into ways to incorporate other powers into that kind of thing, too. Like with moving platforms, for instance: a moving plat in zone 4 will stop/reverse an entire tile further away than in zone 2.

I'd love to go into further detail about that too, but again - kinda pressed for time right now. So I'll leave it at that.


Suggestions?
Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #29 on: June 08, 2010, 09:54:00 AM »

Alrighty, been awhile since last posting. Hard week of working a lot ate up a good bit of time (and d/l'ing and playing some of the cool new titles here ate some more! But it was so worth it).

Got about 10 (5M/5F) of the NeoSprites semi-colorized for now, at least as far as flesh tones go. And then I noticed one... no, two... no, actually FOUR... more are already there, practically. So now, the odds are tipped in the guys direction a bit (they were Rick, Krauser, Zangief, and Yamazaki). I suppose it'll work for an alpha build, and I can always fill in a few more chickadees as I go.

CURRENT SPRITE-LIKENESS LINEUP: Akuma - M.Bison - Guile - Krauser - Kyo - Rick - Evil Ryu - Yamazaki - Zangief - Athena - Chun-Li - Felicia - Leona - Mai ...hopefully balanced better soon! Billy Kane and Whip being possibly considered too, but that's a maybe for now.__________

And so, the hard part begins. Deciding on a finalized engine, and BEGINNING THE CODE. (Or the initial engine-tweaking.)

 Tears of Joy ... Cry ... Screamy ... Facepalm


SNAP OUT OF IT. It's just typing.

-Gameplay/Room logic is in place.
-Design of widgets and gameplay tricks is done, too. Even math involved in placing most of them!
-Plenty of resources to work with... maybe minus sound.
^ Can't be that hard to fix that, and that's all part of the music-game-related coding now, anyways. And I think I know how I'm doing that, too!

After poking around a few of the IDEs (in some cases, "WTFs"), I'm thinking maybe I'm gonna stick with GameMaker, just to start with. At least I KINDA know what I'm doing with that... but it's gonna suck trying to recreate GML events in other languages if I do that, however. Undecided GRR.
« Last Edit: June 08, 2010, 10:03:43 AM by baconman » Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #30 on: June 09, 2010, 10:01:50 AM »

Prognosis: More sprites and sounds in place. Couple of placeholder BG's too; they look nice, but completely clash with the lo-fi look of the gameplay graphics. I've got some things to get busy with in the meantime, but I'm just about ready to post some mockups. Couple of graphical things, like a neat title screen, a couple of BG's/splash screens, a 24x24/48x48 tile-friendly font and a slight lack of critters have me set back a little bit.
Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #31 on: June 12, 2010, 03:01:59 PM »

NOTE TO SELF: Programming logic, part 1. THE ROOMS.

START

- Title
} load controller configs (settings.ini)
} check for savegame (*.nfo)
>> F: [New Game], [Configure] or [Exit]
>> T: [Continue], [New Game], [Configure] or [Exit]

-Exit
} Exit application; END.

- Configure
> Sound Effects Volume
> Music Volume
> Keyboard Controls = (set and loop back, save "settings.ini")
> Alternative Controls (Gamepads, etc.)
> Exit (save settings.ini, to [Title])

- Continue
> Select Savegame
} to [Continue Play]

- New Game
} *RNG spritegender (49% male, 49% female, 2% combination thereof - 1% being each combo)
} *RNG spritetop (variable combines with spritegender)
} *RNG spritebottom
} *RNG haircolor
} *RNG skincolor
} *RNG favecolor //color of wardrobe, friendly critters, optimal powerups (R)
} *RNG lastcolor //second color of wardrobe
} *RNG name1 //first name, an actual "name name" - at least one per alphabet letter/gender
} *RNG name2 //"space", or a conjunction like "the" or "of" - one tile wide
} *RNG name3 //have fun with this one! (all names = R)
} *RNG jpower //main attack (R)
} *RNG kpower //jumping agility power (R)
} *RNG lpower //other mobility-based power (R)
} *RNG zone1 //these determine the zones to play. Margin of Error = 6
} *RNG zone2 //Margin of Error = 5
} *RNG zone3 //MoE = 4
} *RNG zone4 //MoE = 3
} *RNG zone5 //MoE = 2 (DeadZone is hardcoded, and always has MoE of 1; so that's not a variable)
} *RNG music1 //determines musical instrument role (R)
} *RNG music2 //determines dancing variables
} *RNG music3 //presets one song timing pattern for a "signature sound," like a special move
} *RNG fight1 //determines super move system (R)
} *RNG fight2 //determines function of special "5th" button during fighting (R)
} *RNG friend1 //references an NPC as a friend in Zone 1
} *RNG friend2
} *RNG friend3
} *RNG friend4
} *RNG friend5 //you get no friends in DeadZone!
} *RNG foe00 //persists in every zone
} *RNG foe01
} *RNG foe02
} *RNG foe03
} *RNG foe04
} *RNG foe05
...
} *RNG foe30 //foes 6-30 will appear more as "contenders" instead of actual foes
} *RNG objective1 //main platformer objective (R)
} *RNG objective2 //main adventure objective (R)
} *RNG objective3 //main race and chase objective (R)
} *RNG objective4 //left available for splitting racing from shmup objectives (//R)
} *RNG objective5 //musical instrumenting/dancing bonus objective, like combo or full life (R)
} *RNG objective6 //bonus fighter objective, much the same way (R)

} generate char1 by doing "*"
} display relevant info (R) and basic sprite until any input
} generate char2 by doing "*"
} display relevant info and basic sprite until any input
} generate char3 by doing "*"
} display relevant info and basic sprite until any input
> select between [char1] [char2] or [char3]
> Edit Name? (T: input name, save changed name)
> select between [simple] [tactic] //3-button basic fighter (P/K/S) or 5-button technical input (LP/LK/HP/HK/S)
> select between [froll] [fchg] [ftap] //preferred fighting special inputs
} Create savegame from info (%char%.nfo)
} to Continue Play

...
« Last Edit: June 12, 2010, 03:06:49 PM by baconman » Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #32 on: June 12, 2010, 03:18:55 PM »

-Continue Play

} load savegame (%char%.nfo)

} *RNG gametype //sets type of game for challenge
} *RNG zone1..zone5 //affiliates a zone with type of challenge
} *RNG widget //sets a level theme, based on outcome and "gametype" variable
} produce levelname //use variables above to produce an understandable level title and display appropriate icons

} generate part1 by doing "*" //choice 1 on day planner
} generate part2 "
} generate part3 "
} generate part4 "
} generate part5 "
} generate part6 "

} display part1..part6 in day planner screen (replan)
> choose between [part1] [part2] [part3] [part4] [part5] or [part6] for morning
} disable rechoosing morning
> choose between [part1] [part2] [part3] [part4] [part5] or [part6] for noon, or [back]
} disable rechoosing morning or noon
> choose between [part1] [part2] [part3] [part4] [part5] or [part6] for evening, or [back]

} display morning, noon, evening
> Confirm?
>> T: to PlayChallenge
>> F1: [back]
>> F2: to (replan) //above

...
« Last Edit: June 12, 2010, 04:36:33 PM by baconman » Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #33 on: June 12, 2010, 03:52:56 PM »

-Dynamic Music Generator

} lookup (zone1..zone5) and reference to determine appropriate tempo, pitch, and style
} RNG lead1 //one lead instrument of song, other = music1 player variable; plays intros and solos
} *RNG notes1 //a series of 1-4 inputs, in a sequence of 8.
} *RNG notes2
} *RNG notes3
} *RNG notes4
} *RNG timing1 //takes sequences, and makes structured/timed melodies of notes of them
} *RNG timing2 //main styles will be in sequences of 16, IE: 1/16 notes
} *RNG timing3 //Some zones will feature "style" sequences of 12s instead...
} *RNG timing4 //for folk, waltz, or blues styles; or combine for "experimental" sounds.
} *read music3 //load and utilize "signature sound" for music1 - the player instrument
} *RNG structure //poetic structures, like linear or limerick, to name a couple

} do "*" to produce intro, trim half to lead1, then half to lead1 + music1 //may be same!
} do "*" to produce verse
} do "*" to produce chorus
} RNG solo1a //a half-verse timing sequence
} RNG solo1b //second half, mix and match
} RNG solo2a
} RNG solo2b
} RNG outro //buildup, chorus fade, "big rock ending," lead1 or music1 alone ending

} save data for easy reference in %char%.nfo; four songs per zone, plus one "theme" song
//song3 and song4 per zone will be mixed together into a long, epic/progressive kind of song; so there's really only three songs, but still four variables for it.
__________

LOGIC BREAK:

Poetic structues will work like: notes1+timing1 in beat sets, one timing variable will be associated with, and replaced by music3, the "signature sound" timing variable, but only by the player's instrument, possibly by the main1 variable as well. Solo1a/1b is played by main1 (sometimes the player, sometimes not), overlapping other instruments playing the verse; Solo2a/2b is played by music1 (the player), overlapping other instruments playing the chorus. Only some poetic structures support solos, however; and some may only use one or the other.

"Playing a song" then, is simply a matter of the program reading the appropriate poetic structure, and referencing the variables above in doing so. Epic/Progressive songs simply add the "song3" and "song4" variables to that ("song3+notes1+timing1", for instance), in various kinds of crisscrossing structures.
« Last Edit: June 12, 2010, 04:33:25 PM by baconman » Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #34 on: June 12, 2010, 04:29:13 PM »

 Yawn *catches breath*

-PlayChallenge

} +1 to "days" in %char%.nfo, and save
//FIRST AND FOREMOST! You lose or ragequit? Too bad. Have an accident, instead? It's just a game, it's not that important.
} recall (morning)
} produce level1 and play //"produce" depends more on gametype.

} WIN: display results1 until input //one-section results/evaluation kind of screen
} recall (noon)
} produce level2 and play

} WIN: display results1 until input
} recall (evening)
} produce level3 and play

} WIN: display results1 until input
} display results2 //full day's evaluation
} bonus conditions met?
}} T: to BonusGame //play a bonus game, determined by "days/10" then go to ContinueScreen
}} F: to ContinueScreen

} LOSE: display results1 until input
} display results0 //identical to results2, but in a gloomy "you lose" tone
} to ContinueScreen

- ContinueScreen
} are days>=30
}} T: rename %char%.nfo to %char%.npc
} display ending //unsure of constructing this atm.
> choose between [exit] //no really, that's your only choice now.
}} F: ...
> choose between [exit] [continue]
} (exit) to Title
} (continue) to ContinuePlay //above
__________


Well, that's a decent amount of progress for today, at least. I guess I'll get into the gametype generation breakdown over the next week or two. Sucky thing is, I HAVE the logic in place - but that doesn't make it code yet.

If you've happened to see Gentrieve and the algorhythm for it's room and lock-node generation, as well as how I plan to make room placement (PGC Metvania thread in Design), it pretty much follows the same kind of logic; it just happens to reference a few widget/obstacle seeds based on things like jpower/kpower/lpower variables, and the "widget" seed in the level generator. They are then (re?)positioned mathmatically from a key point by the zone's margin of error variable, which also determines enemy population and placement as well, in different ways that are both distractive AND constructive to the player.

The bonus games are designed to test luck, reflexes, memory, etc.; which are then precisely calculated/rated to the player's %char%.nfo file, to be referenced in NPC conditions. This also deliberately includes statistics such as distance to reactions (such as avoiding/blocking attacks), favorite attacking/manuevering techniques, how you use your powers in timing or combination with one another, powerup preferences, musical accuracy, etc.

The bonus games appearing will correlate to how well you accomplish your bonus objectives; doing more of them will give you more chances in the bonus game. The results are always saved as a solid number too, so the higher you get your numbers, the more formidable an NPC you'll create as a result.

Finally, I'm thinking that since it works with the critters, perhaps the "friends or foes" thing should simply be based on the favecolor variable - but regardless of that, the friendly NPCs will be recolored to match you, and foe ones (if they match) will be recolored to differenciate them from you.
« Last Edit: June 12, 2010, 04:41:38 PM by baconman » Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #35 on: June 13, 2010, 06:45:52 PM »

So a breakdown of zones, and variables they generate:

zone = Brick City

shortmap = 10w2h //10 screens wide, 2 screens high
longmap = 15w2h
moe = 6 //margin of error
mapdir = right

musicbpm = 180
musicpoem = linear

widget1 = pipemaze
widget2 = tracklifts
//widget3 = pinball //?

color1 = red
color2 = gray
color3 = teal

critter1 = footsie //the metool-style critter
critter2 = crawly //the spider
critter3 = roboteye //big eye robot ride
critter4 = doghound //obvious
critter5 = tweeter //beezo, parry, pidge, etc.

__________

zone = Jackpot Circus

shortmap = 7w3h
longmap = 8w4h
moe = 6
mapdir = up

musicbpm = 170
musicpoem = blues //12ths, arranged so it's like a 106 bpm jazzy beat

widget1 = pinball
widget2 = slots
widget3 = cannons

color1 = purple
color2 = green
color3 = gold

critter1 = porkuspine //spiny roller
critter2 = trunx //elephant
critter3 = pitfaller //up'n'down
critter4 = menus //menus mytrap
critter5 = jurkey //the bigger bird

__________

zone = Chemical Sewer

shortmap = 5w4h
longmap = 6w5h
moe = 5
mapdir = down

musicbpm = 150
musicpoem = funk //think Chemical Plant or Hydrocity Zone, here; mixed blues/linear

widget1 = pipemaze
widget2 = currents
//widget3 = undecided

color1 = gray
color2 = purple
color3 = green

critter1 = footsie
critter2 = sawtooth //Klampon-like gator, rides like Rambi
critter3 = crawly
critter4 = jawbreaker //Enguarde-like shark
critter5 = toadyu //frog

__________

zone = Undersea Base

shortmap = 3w7h
longmap = 3w10h
moe = 4
mapdir = up

musicbpm = 120
musicpoem = limerick

widget1 = currents
widget2 = bramble
widget3 = pipemaze

color1 = navy
color2 = green
color3 = brown

critter1 = pitfaller
critter2 = sawtooth
critter3 = footsie
critter4 = jawbreaker
critter5 = toadyu

__________

zone = Tall Tower

shortmap = 2w10h
longmap = 2w15h
moe = 4
mapdir = up

musicbpm = 140
musicpoem = linear

widget1 = tracklifts
widget2 = cloudlifts
widget3 = currents //by this, I mean wind gusts. It's the same thing, just not underwater.

color1 = orange
color2 = yellow
color3 = gray

critter1 = footsie
critter2 = jurkey
critter3 = buzzkill
critter4 = toadyu
critter5 = tweeter

__________

zone = Bushy Jungle

shortmap = 7w3h
longmap = 10w3h
moe = 5
mapdir = right

musicbpm = 130
musicpoem = funk

widget1 = cannons
widget2 = bramble
widget3 = swinging

color1 = green
color2 = brown
color3 = orange

critter1 = porkuspine
critter2 = crawly
critter3 = trunx
critter4 = menus
critter5 = sawtooth

__________

zone = Icy Ruins

shortmap = 5w4h
longmap = 6w5h
moe = 3
mapdir = up,right

musicbpm = 100
musicpoem = prog //combines 2 other styles and mixes them one way

widget1 = slippery
widget2 = moretraps
widget3 = swinging

color1 = white
color2 = blue
color3 = purple

critter1 = menus
critter2 = batsy //the bat
critter3 = trunx
critter4 = crawly
critter5 = toadyu

__________

zone = Volcanic Cave

shortmap = 4w5h
longmap = 5w6h
moe = 3
mapdir = right,down

musicbpm = 200
musicpoem = blues

widget1 = tracklifts
widget2 = chaser
widget3 = moretraps

color1 = brown
color2 = black
color3 = navy

critter1 = batsy
critter2 = crawly
critter3 = roboteye
critter4 = doghound
critter5 = sawtooth

__________

zone = Altitude Canyon

shortmap = 7w3h
longmap = 10w3h
moe = 2
mapdir = right

musicbpm = 180
musicpoem = limerick

widget1 = cannons
widget2 = cloudlifts
widget3 = currents

color1 = brown
color2 = orange
color3 = black

critter1 = porkuspine
critter2 = tweeter
critter3 = jurkey
critter4 = pitfaller
critter5 = sawtooth

__________

zone = Gravity Core

shortmap = 4w5h
longmap = 5w6h
moe = 2
mapdir = up,right

musicbpm = 160
musicpoem = tweak //mix of blues & linear designed with 7/8 timing in mind - intentionally "weird" sounding

widget1 = gravityswitch
widget2 = tracklifts
widget3 = pipemaze

color1 = green
color2 = white
color3 = yellow

critter1 = batsy
critter2 = crawly
critter3 = roboteye
critter4 = doghound
critter5 = tweeter

__________

zone = DeadZone

//shortmap = *w*h //not sure what I'm gonna do with this, yet.
//longmap = *w*h
moe = 1
mapdir = *

musicbpm = * //rounded to nearest supported value
musicbpm2 = 190
musicpoem = epic //combines two other poetry styles, mixes and matches them, but differently than prog

widget1 = *
widget2 = *
widget3 = *

color1 = black
color2 = gray
color3 = white
color4 = red

critter1 = menus
critter2 = roboteye
critter3 = doghound
critter4 = jawbreaker
critter5 = sawtooth

__________

So these will be referenced by the map-creators in the challenge-making parts of the engine to define some of it's variables. It's pretty important to have them defined before trying to apply them, huh?
« Last Edit: June 16, 2010, 08:05:22 AM by baconman » Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #36 on: June 16, 2010, 08:01:11 AM »

Building Platform Game levels:

1. Make #w+1,#h+1 room structure.
2. Offset columns (column*half room)
3. Stretch variable rooms (columns/rows) according to K-Powers:
-(1-2*h OR 1-2*w) Double Jump
-(1-3*h) Wall Jump/Stick and Climb
-(1-3*w) Gliding
-(1-2*w) Air Dash
-(1-2*h + 1-2*w) Ninja Jump
-(1-3*h + 1-3*w) Charge-up Freeflight
-Spin Jump (does nothing at this point)
-Super Crush (does nothing at this point)

4. Stretch different variable rooms according to L-Powers:
-Mega Slide (no effect)
-1-2*w Roll Jump
-1-2*w Spin Dash
-1-2*w Sonic Speed
-Plasma Shield (no effect)
-Evasive Manuevers (no effect)

5. Begin totally open, add 6-9 "logical walls," +1 potential "fake wall" or trap/spike wall.
Logical walls also take into consideration variables like your powers, zone's widgets, and the margin of error involved; and include other types like conveyors.
6. Create one looping "horizontal barrier," and one looping "vertical barrier;" and generate starting/ending points in proximity to them. (I may add a direction variable to zones, to reflect this: so an "up" variable would place a start above the horizontal barrier somewhere, and the finish below it; the player must "loop the map" upwards then, to reach it. //For barriers, make one variable-but-looping trail of conjoining rooms in each direction solid blockoffs, so there's a solid, impenetrable room seperating the "left" and "right" sides of the level.
7. Define other key rooms (like objective-related items), then generate them with appropriately challenging obstacles. Populate remaining rooms with widgets and critters:

9-MoE critters, positioned by: //smaller margin of error = more critters
hwall-flying*48 //airborne or swimming enemies' "flying" will be RNG'ed, ceiling-hangers will be "-1", ground-based will be 1... Gravity Core, however? Probably a geometric value will be added for that; maybe a vwall variable as well... I suppose a check/unique formula is a good move to make in that case.
3 max crittertypes
RNG 1-5 widget instances, positioned by:
stretch*(hwall+MoE*24px+24*round{RNG[1..6]})

roomscreenlock=0 //adventure will feature scrolling rooms, others do not
roomscreenscroll=0 //different autoscrolls for racing and shmup styles
Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #37 on: June 16, 2010, 08:46:24 AM »

Changes to Make Adventure Levels:

1. Build #w+1, #h+1 rooms.
2. Offset rows. (instead of columns)
3-4. Stretch variable rooms according to K-Powers/L-Powers.
5. Begin totally enclosed with various wall types, then REMOVE 7-10 walls per room.
6. Create the looping barriers.
7. Define key rooms (trap rooms, song-learning rooms, etc.), and generate obstacle walls in other rooms taking into consideration the "mapdir" variable. Also, generate conditional walls, triggered with stuff like switches, pushblocks, or clearing the room of enemy critters. Populate the rooms appropriately.
8. Change roomscreenlock=1; so that the game feels more room-based/dungeon-like in this aspect.

Changes to make Race 'n' Chase levels:
1. Build #+1w, #+1h rooms.
2-4. Stretch rows or variables appropriate to player variables and friendly critter(s). //Remove offset step.
5. Generate sets of walls with "mapdir" in consideration. //Right creates more hwalls, Up/Down creates more vwalls.
6. Generate a single barrier (vertical OR horizontal, via mapdir) that wraps around the level.
7. Layer together the structures on one side of the barrier, and then layer together the structures on the other, to make the different "lanes."
8. Generate an appropriate starting point (to mount your friendly critter of choice), and link that with a starting position point on the map.
9. Loop one side of the barrier (in mapdir's direction) to the other, and establish a finishing point.
10. Populate the screens with other critters and widgets, and generate competitors. ("7-MoE" critters; one or two widgets per "MoE*screens" so later zones are increasingly more widget-dependent)
11. Change roomscreenscroll=2 //This will auto-scroll the engine ala Doomsday Zone - there is autoscrolling and you get a certain degree of favorable momentum as a result of independent physics, but you can advance the screen yourself quicker, as well.


Shmup is similar, but will generate patterns/formations of critters and shot variations. Competitors' AI will also battle to destroy you, rather than trying to outrun you; and it uses roomscreenscroll=1, a more smooth scrolling speed. Both of these may affect facing direction regardless of movement (IF mapdir=right); but I'm thinking of still allowing aiming in either direction anyhow.

Fighting and Music will take place in "arena" stages instead. More on that later.
Logged

baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #38 on: June 22, 2010, 03:37:08 PM »

Much of the assets I want to mess with are in, now; and I'm getting pretty close to a few semi-complete sprites. Other than NGPC chars', I was mainly going with the Chumbucket outlines; but each of those choices still have some gaps to fill in. (IE: One another's fortes.)

I'm also debating on going with copypaste hairstyles, or possibly using GM's particle engine to make "dynamic hair" on the ChumChums. It sounds corny, and I'm not entirely sure how I'm gonna pull it off just yet (besides timing a lifespan to correspond with their hair length), but I also don't wanna make it look like all the characters' heads are on fire, either.



 Undecided This thing is gonna be BIG, I just know it. Hopefully though, once I get the base-characters fleshed out (IE: the Chumbucket ones), I can recompile this with considerably fewer sprites and more simple variation thereof; and that should drop the size back to being managable.


EDIT: Up to making objects/rooms now. Smiley
« Last Edit: June 22, 2010, 08:26:44 PM by baconman » Logged

guille
Level 3
***



View Profile WWW
« Reply #39 on: June 23, 2010, 08:26:24 AM »

This sounds crazy awesome, pretty ambitious as well, I always dream of a game I can play and replay for ages and this may well be it.  Coffee

Planning is key in a project like this, also how you develop it is important, as I know it will be taxing so you gotta know how to tackle it in order to keep your motivation high.

keep it up! Maybe it's still too soon but I can't wait to see something playable soon.  Beg
Logged

Pages: 1 [2] 3 4
Print
Jump to:  

Theme orange-lt created by panic