Eclipse Phase Core Rules : Code Library (C++)
Hi,
I'm mostly a game developer and I love Eclipse Phase (even if I didn't read it all yet I've bought all the books so far).
I don't have time to build a game based on Eclipse Phase at the moment, not even a little one (the rogue-like idea from the other thread about making an EP video game is very good idea to me, but I have others). But I want to do make one in few years from now (when I can).
So, I was thinking that it would help almost anyone wanting to make an EP game to simply have a code base providing core rules and a bit more of the game mechanics, allowing to quickly hack by using those core rules.
So I'm toying with this idea and I think I might start writing (in the coming weeks or months) a set of short libraries to provide the core rules and some helpful constructs. As I'm making games mostly in C++ I would write it in C++ as well (C++11 to be precise). A separate C API wraping this library should be possible to write to allow easy binding with other languages, but it's not my priority.
Before I start, I wanted to first expose the idea here.
Second, I would like to ask if you have any suggestion or remarks over the following feature list I want to implement first :
- Constructs reprensenting morphs, egos and objects: provide attributes (traits, stats, skill lists etc.), state (a live, dead, insane, etc.) and basic manipulations (following the core rules)
- Test functions for core rules (basic tests, opposed tests, skill tests, etc.)
- Specific rules tests functions (certainly in separate libraries) : Combat, Hacking, Psy, Forking/Merging, etc.
- Action-Turns sequencer : helps dividing virtual time in turns and actions etc. - with time deformation modifiers.
- Weapon, Armors, and other objects damage calculation functions.
Also the library should allow :
- Customized dice-rolling functions (used by test functions)
- All rules should be configurable (because in video games you have sometimes to modify the core rules parameters to match the game feel)
- Moxie and custom modifiers always usable for any test function
- Very very very modular and extensible, to allow easily constructing new rules
- Open Source (MIT or BSD or whatever)
Note : those libraries should adress only rules processing, not content, obviously.
I think that if we have this, it would help a lot any game developement based on EP rules. Right?
I dont' have a name yet for those libraries.
So, any thoughts? Suggestions? Missing features?
A friend of mine was looking at doing something similar to this, but in a more web-friendly language (I believe he mentioned javascript). This way it could work easier as a gaming tool. I don't think EP could ever work as a 'computer game', just because it requires too much help from the GM to jigger the numbers into meshing just right. However, automated GM tools are always handy.
I'd second this... making web/mobile apps for GMs and players seems more likely than a full on video game using EP rules.
That said, however, I've been working on getting the raw data part of EP (guns, armor, morphs) into a standard, easy to access format for just such a project! Yay less work for you!
http://www.eclipsephase.com/standardized-item-data-format
I've been putting it into .csv format since I was mostly chopping and rearranging pieces from Kindalas' character sheet... I haven't got backgrounds yet, and am missing some description/summary metadata for armor, gear, and factions...
http://itsmax.net/pub/EclipsePhase/data/
A creation/management of character app would be a great idea, especially if using a data cloud that could be used from mobile devices and web browser both
-Morph management
-Reputation accounting
-Gear 'store'
imagine that you use the smartphone/pad (IOS or Android, depending on the model owned) and saving the data by cloud, so you can, at home, think clearly how to use the Rez points, then save it. the GM would get a copy of the change and a notification
also a system of message picture sharing would be a good idea, to discretely send secretly done action to the GM.
that's some idea that comes to mind
imagine that you use the smartphone/pad (IOS or Android, depending on the model owned) and saving the data by cloud, so you can, at home, think clearly how to use the Rez points, then save it. the GM would get a copy of the change and a notification
also a system of message picture sharing would be a good idea, to discretely send secretly done action to the GM.
that's some idea that comes to mind
This sounds awesome. Morph swapping is a big pain, even with the excell sheets available.
The other big GM tool that comes to mind is a Combat tracker built with
-- initiative order
-- checkbox/dropdown modifier calculator
-- combat skill-test rolls
-- ammo tracking
-- damage calculator


)

Sounds great! I've got some basic experience in C++ (EG: I know the language but I'm crap at it) and for somebody like me that would make it easy to do creative things with modules to make everything from quick and dirty little games to full blown epics.
Something that I might suggest from the bottom end of the spectrum would be that you make modular "Rooms" or "Areas of Operation" that can be clunked together with little to no effort, have some context plugged into the code to allow for easy scenario building. Especially if your making just a simple text based adventure game. Something along the lines of a "room" that gives a description and an option of an exit on any of six directions (left, right, forward, backward, up and down) to the storyteller to allow or disallow with a few lines of code, or comment out that particular option. Say you want to give the player the option of going left or forward because the hall your in runs those ways at a T junction. So you comment out right, down and up allowing only back forward and left. Then you(the storyteller/GM) belt out a:
"The hall in front of you stretches out, curving around the station, but to your left there is a door giving access to a room labeled as "mess hall" do you choose to move forward or enter the mess hall?"
Forward: Forward
Mess Hall: Left
Or something, depending on the feel of the piece.
Just a thought. ^_^
This would also allow for people to program Module environments and add to your archive. Making it easier for some people to do their own work via having more options of stations to work from, or simply yoinking chunks of code pre-written for their own contributions. Kind of in a Minecraft like environment where you have all the building blocks and its up to you to make something fun out of it.
I'd probably spend months building the environment I ran my gamers through in our last campaign. ^_^
There is no such thing as "Overkill", only "Open Fire" and "I need to reload".
- Schlock Mercenary
It's not the bullet with your name on it you need to worry about. It's the 20,000 bullets labeled occupant.
- Murphy's Laws of Combat.