Being dumped unceremoniously here, so that I may move on to more pressing matters.
The Idea:
- A 3d "Kart"-style game
- That runs in a browser
- Using Google’s free, open source O3D plugin
- Supported by ads on in-game billboards
Why a "Kart" game:
- Fun
- Simple to pick up and play
- Relatively simple AI — chooses between preset (invisible) rails and attacks opportunistically
Why O3D:
- Allows fast, hardware-accelerated 3d in modern browsers
- Free for developers and users
- Non-proprietary
- Reputable development team
- Good feature list, growing
Problems With O3D:
- Relatively low-level; no "JQuery" for common tasks
- Would need to develop a toolchain from scratch to convert Animation:Master models and animations
Art Style Ideas:
- Pen and watercolor look
- Bright and fun
- Simple lighting
- Baked shadows on track
- Fake shadows on karts and items
- Dynamic lighting used sparingly for weapon effects
- Cartoony characters
Track Ideas:
- Traction issues — ice, mud, etc.
- Wind issues — gusts, fans, etc.
- Loop-de-loops — why should Sonic have all the fun?
Kart Ideas:
- Permanent, unique kart/driver combos
- Vehicles affected differently by traction and wind as appears logical
- Left and right "slots" on each kart
“Slots” Explained:
- Items can be stored to right or left of driver
- Items have different weights, sometimes other characteristics
- Item weights affect handling
- Heavy jewels, for instance, might be worth points at the end, but be a driving liability
- Tapping trigger switches items between slots
- Holding trigger uses items
- Properly-timed switching of unbalanced items can assist in turns
Drivers:
- Lively 3d cartoon characters
- Represent very different play styles
- Some better suited to some tracks than others
- Unique weapons
- Unique weaknesses
- Unique animations
Sample Drivers:
- The Marboxian:
- Reuse one of my characters
- Drives a hovering flying saucer
- Not affected by traction
- Heavily affected by wind
- Unique weapon: blaster
- Weakness: Phat beats from radio
- A Bear:
- It’s a bear
- Heaviest character
- Not affected by wind
- Low traction effect
- Unique weapon: Swipes from massive paws
- Weakness: Igor Stravinsky
- Maxwell the Lil’ Demon:
- Reuse a character
- Unique Weapon: Zappy Pitchfork
- Tommi:
- Red-headed, pigtailed little tomboy character
- Raq the Raccoon
- Reuse a character
- A Mouse:
- Reuse a Character
Sample Items:
- Car radio:
- Trigger scans for next station
- Low grade, low quality audio
- Stations come in unreliably in different parts of the track
- Most of it’s always country stations
- Triggers musical weaknesses, distracting nearby drivers (see Marboxian, Bear)
- Makes a small but satisfying hit if thrown
- Cinder Block:
- Affects handling, weighing down side of kart it’s slotted in
- Makes a satisfyingly hard hit when thrown
- Jewels:
- Worth points at the end, as a function of their weight
- Power ups
- Thrown weapons:
- Targetted by steering direction
- Steering into opponent increases velocity
Game Logic:
- JavaScript getting fast, but still think memory is cheaper than processing in browser
- Lightweight AI chooses between invisible rails stored in memory
- Lightweight "Fun Physics"
- Two-player head to head on same computer would be fun — how many simultaneous key presses do modern OS’s allow?
- Fresh ads loaded each time a track loads
- No network play, at least at launch — cheating opens up a big can of woes
Physics Engine:
- Basic 2d collision physics
- Cheats for not bogging down on large pileups
- Simple 3rd-axis physics — tracks are still essentially 2d
Sending Content Down the Tubes:
- Google O3D samples VERY slow to load
- Use simple geometry
- Instance a lot
- All art assets have set URLs so browser won’t re-download them if they’re already in cache
- Light, smart use of texture maps
- Is it possible to generate procedural textures on client side in JavaScript? Gradients, simple repeats, noise, etc.
- Bone-based character animation
Why It’s a Bad Idea:
- Could be turned out in a few months by a team of 4 or 5
- I’m one person
- Have studied the nuts&bolts of 3d, but getting O3D running well would likely take me months
- Animation:Master toolchain, less steep, but generally likewise
- Decent with JavaScript, but it would be the biggest project I’d ever programed by far
- Speculated much, but never actually written a physics engine
- Best at the art and animation side of things; still a lot of assets to create and perfect
- Advertising would be based on impressions, as there’s no clickthrough
- Bandwidth costs wholly unpredictable
- Covering costs, never mind profitability, wholly unpredictable
- I’m good at art, but I suck at business
- I need to focus on getting more work NOW
- Another of my thousands of over-the-rainbow ideas
There.