|
From: Ben C. <cro...@ne...> - 2000-04-22 02:27:56
|
Comrades, I'm including the proposal sheet which I'll hand to Mr. Royce (along with the design document). If you think you won't be able to do your assignment, let me know *now* so I can change it. If you have any questions at all, please e-mail me so we can get things worked out soon. Remember, we only have five weeks to work on this, so we have to move *fast*. Project X Job Assignments ========================= Short description of project: Project X will be a fast-paced multiplayer action game. Think Zelda 3 with twenty Links, all fighting each other. It's not just a bloodbath, however (and, in fact, there won't be any blood at all) -- strategy is required to maintain one's status and to beat out the competition. What's already been done: Ben has already written a tile engine, Striker, which we'll use. It works with Linux and DJGPP, but hasn't yet been tested under MSVC -- the port will be part of the project. Other than that, there isn't much there. Ben's started on a prototype, but it's basically dead in the water for now. Groups ------ Note: the first person in each group is the group leader. Game Engine and Logic: Annie, Ben, Tom, Brandon, Nate The game engine will be as generic as possible, and it will basically just take data in and spit data out. Scripts will be written for the actual game logic, which gives us incredible extensibility and customizability (oh, how I love big words... ;)). Things that will be covered by this pair (the engine and the scripts) are movement, enemy appearance, game rules, player characteristics, weapon characteristics, map features (i.e. teleports and such), combat, and so on. Scripting: Matt, Tom, Cristian This group will interface the core game classes (written by the game logic people) with Lua, the scripting language we're using. They'll work closely with the game group and keep everything up-to-date. In addition, they'll write scripts like crazy to test features and to make sure we can do everything we need to do. They'll give feedback to basically all groups. AI: Nate, Jonny Ideally, everything will be controlled by scripts, including the artificial intelligence. Until the scripting and game groups get the interface set up, this will basically require sketching out ideas and putting them into pseudocode. We'll use finite state machines for the implementation, with a full-featured script interface. AI covers all computer characters, creatures, and possibly weapons. Networking: Don, Ben The networking group will create an API for sending and retrieving game messages. They'll be in charge of insuring synchronization between machines, making sure that everyone has the right data, and the chat system. The API will also have a script interface. Level design: Tom, Nate, Jonny These guys will strive to create the most entertaining and intriguing maps possible. They'll create artwork and build a library of levels for use later on. They'll also test things out like crazy. Menus (Flash): Brandon, Cristian, Jonny This group will be in charge of all the flashy stuff like the menus and help screens and so on. They'll write a menu system, and use it for setting options, connecting clients to servers, choosing maps, and so on. They'll also be in charge of the title screen and the credits. Implementation: Ben, Nate This is a kind of overseer group, insuring that things happen. They'll also be in charge of keeping portability alive -- which first requires porting the tile engine to MSVC. Assignments (in alphabetical order) ----------- These are the assignments for now. Some are long-term, while others are short-term (and thus new assignments will be given after the short-term's are completed). If any assignments are found to be a problem (i.e. skill-wise), they will be given to someone else and a new assignment will be made. Annie: * Fleshing out the core game classes * Tweaking gameplay values (i.e. movement stuff) * Getting animations (players & weapons) working Ben: * Core game engine (the initial classes) * Movement logic * Networking API * Chat system * Utility tools (Striker and friends) Brandon: * Menu ideas * Design of menu system * Layout for menus (i.e. which menus we'll have, where they go, etc.) * Gameplay ideas Cristian: * Test scripts (for all areas) * Documenting scripting interface * Menu implementation * Menu bugfixing Don: * Networking API * Documenting network interface * Chat system * Server/client exchanges * Tutorial on network API Jonny: * Core menu implementation * Menu graphics (look and feel) * Level design * Artificial intelligence for creatures Matt: * Hooking script engine into game engine * Tutorial on scripting * Sample game (like Pong or Pacman) using script engine * Test scripts Nate: * Weapon system * Level design * Artificial intelligence for computer characters & weapons * Finite state machine implementation for AI * Script interface for FSM implementation Tom: * Object system (powerups and world objects) * Level design * Testing Striker script interface * Multiple floor levels (i.e. a base floor and a roof) ------------------------- Have fun! ;) Ben -- "The ultimate measure of a man is not where he stands in moments of comfort and convenience, but where he stands at times of challenge and controversy." -- Martin Luther King, Jr. |