jpcsupplies / Economy_mod

Basic Economy System for Space Engineers
13 stars 12 forks source link

Additional integer field for player records #117

Open jpcsupplies opened 8 years ago

jpcsupplies commented 8 years ago

Can you add an additional integer to the account namespace for players (in a way that wont break existing server player balance data)

something like "account.mission" (namespace may be the wrong word here.. a reference? whatever you would call them; in my day we just called them globals or relational fields)

eg Bank account struct.cs "public int Mission { get; set; } "

I need a way to track a players progression through any missions we setup.

I don't need anything more than that yet, I just want a persistent field on a players record I can play with while i experiment with the mission hud.

To give you an idea what I plan to use it for see below: I was just looking at some of Geneticus's groups - and I notice he is in a story making group..

Long story short, it gave me an idea for using the mission system in a sort of choose your own adventure sort of way, but I need a persistent field to record what step (analog to "page number" in a book or "room number" in a MUD server) the player is up to in the story mission.

Probably work something like this but I will need some help fine tuning: Data: Missions.xml (basically a list of locations and a story-like description of what happens there) Mission number (integer) eg. 10 Description (string) eg. Mission window: "After selling everything to pay for the trip and hopping on the next freighter to ramblers frontier, you find yourself fresh off the boat at the Blue mining Inc Jupiter facility. you have nothing but 100 credits in your pocket, a space suit, some tools and some high hopes. At this point you can try to make some money mining for blue mining inc, or try to get a lift to the new trade outpost under construciton on IO" Conditions (array) (ie go to location X, take item Y to location X, pay extra bonus etc) GPS ?? (array) (list of GPS points that get created on the commencement of this mission) branches (array) list of missions that branch from this point

accounts: accounts.mission (integer) cross references to mission in missions.xml


Sample data Mission number 1 Description "After selling everything to pay for the trip and hopping on the next freighter to ramblers frontier, you find yourself fresh off the boat at the Blue mining Inc Jupiter facility. you have nothing but 100 credits in your pocket, a space suit, some tools and some high hopes. At this point you can try to make some money mining for blue mining inc, or try to get a lift to the new trade outpost under construciton on IO to look for work there" Conditions:
A: Joins Blue mining faction, triggered by player joining faction ID "BLU", reward: 50 credits, branch: mission 2 B: Doesn't join Blue mining faction, triggered by Traveling to Omega base GPS location, branch: mission 10 Mission display:
Join Blue Mining Faction OR travel to Omega base Create GPS points: A In front of the LCD that tells you to join BLU mining to access station. B Omega Base


Mission number 2 Description "Blue mining happily offers you work, advances you 50 credits for equipment and requests you mine some nearby asteroids for ore. You can sell this ore directly to Blue mining using the /sell command." (it could specify a particular ore the market is short of too) Conditions: A: mines/sells 5000 of ore to Blue mining. Reward: 500 credits branch: mission 3 Mission Display: Mine 5000 ore and sell to blue mining Create GPS points: A Three nearby asteroids (if we use the "particular ore" logic, and we have a working "scan report" system database #114 generate the 3 nearest recorded asteroids with that ore as GPS points)


Mission number 3
Etc


Mission number 10 Description "After what feels like an epic journey, you arrive at Omega base. You should apply for a job here from Zannador - request to join the XXXXX faction" Conditions: A: Joins Zannadors faction. Reward: 500 credits, branch: mission 11 B: Is rejected from Zannadors faction. Reward: 50 credits, branch: mission 20 Mission display: apply for work at Omega industries Create GPS points: A Omega Station - Zannadors office.


Mission number 11 Mission number 20 etc


jpcsupplies commented 8 years ago

Another advantage here long term.. is we could eventually have a "missions.xml" file that players can edit or swap with each other to create branching stories.

The ability to play sounds (like narration or a mission complete sound) would be useful here Keen /Leans/

jpcsupplies commented 8 years ago

see also #132
Left open for reference notes on sample missions