Loading...
  OR  Zero-K Name:    Password:   

Editing the campaign

8 posts, 545 views
Post comment
Filter:    Player:  
sort
6 years ago
After thinking about it some more, I may have found a story that can fit the campaign with no changes to the missions. I have started rewriting briefings, however they are necessarily very short and it is a challenge to convey the whole story with those.

Unlocking codex entries would greatly help, how do I create new entries and make missions unlock them? Also, can a codex be unlockable by several missions (that is, the first one passed unlocks it)?
Also, in the index, will all codex entries have fixed order? There are a few entries that would greatly benefit from a pre-ordered list (notably, the final one), instead of being in the order they were unlocked.

Less important, is it possible to tweak the in-game briefing screen? It would help if the tips were displayed before the briefing text. Otherwise, anything but the shortest briefings will push tips too low and require the player to scroll down. The player having already read the briefing in the previous mission screen, tips should be more important.

Also, how can I edit the missions themselves? Mostly, it would be to make it send text through the chat, with maybe a few small delays here and there to give more time for said text. Not sure where the relevant files are and how to tweak them, though.

The most important part is the codex, I'm not sure if what I have in mind can work without it, if only for the ending. In any case, I should push something on GitHub as soon as I have a complete draft.
+0 / -0

6 years ago
We've discussed campaign story a bit in this thread: http://zero-k.info/Forum/Thread/28384?page=1&Search=&User=&grorder=&grdesc=False&grpage=1

It doesn't answer your questions but you could shed a light on what your take on the story is.
+0 / -0
This is indeed this thread that inspired me to give it a shot. In this post, I try to describe what I had in mind, though it may be a bit muddled. Basically:

- The story is entirely told first-person, though the briefings (and hopefully codex entries). No info is given on the player character (PC): in this grand tradition of videogames in general and RTS in particular, having a non-descript PC allows for the player to more easily identify with it. Think about the success of Gordon Freeman, for example. So maybe the PC is human, or a gene-tweaked posthuman, or a cyborg, or a free machine... This is not the important part. What's important is what happens to the PC once awoken.

- The PC wakes up after a long time, for so long that what's left of star maps on the Commander are obsolete due to star drift - so much that it cannot even give a good estimation on how long has passed. The PC itself may suffer from memory loss, but this would probably be hinted at, at most. The Commander's memories are in ruin, though.

- The Commander seems to have been a prototype, the PC don't remember seeing anything like it. Nothing like waking up from half an eternity in an unknown machine with no idea how you ended up there, with automated defense systems fighting over your glitched, immobile rustbucket.

- The galaxy is empty, with only non-sapient automata mindlessly following decayed programming and fighting each-other in meaningless battles. The problem is, most of them identify the PC as something to be eliminated. So the PC has to jump around the galaxy, recovering lost tech for its Commander, trying to figure what happened and generally trying to survive local bots.

The spolier parts are work-in-progress. Most of this assumes that codex are available:
[Spoiler]
+1 / -0
small suggestion - it would be nice, if the "raiders/intelopers/looters" that are meet in some planets, could be described as not being the non-sapient machines. It could be hinted that from PC point of view, they are degenerate sapient <whatever>, not much more than angry "animals" (whenever this feeling of superiority the PC have is justified or not, could be left ambiguous).

After all, we have missions - like new tank factory unlock one - where it is mentioned that "negotiations with local warlord gone awry" - the missions structure, with Commander protected via two ogres, vs. ambushers (including mentioned warlord) suggest awfully sapient behavior ;)

---
+0 / -0


6 years ago
Download the sources and make a working dev folder. This is a bit of a guide: http://zero-k.info/mediawiki/index.php?title=Zero-K:Developing#Getting_sources

I have made an additional campaign setting. It can be selected at the bottom of the develop settings menu. Here is an example of adding codex entries: https://github.com/ZeroK-RTS/Chobby/commit/e9f563405ab1530c781d3b9eb71bda63ee1d4de0
+0 / -0
6 years ago
Ok, I have the codex working now, thank yous AUrankAdminGoogleFrog!

But now I need help with line breaks in the briefing:
- If I put a line break directly in the file, it works fine in the briefing screen, but prevent the briefing window to appear in the mission itself and generally stops the mission from working.
- If I put a \r or/and \n in the file, the in-mission briefing window works fine and displays a line break, but the pre-mission briefing screen displays the \r or/and \n instead of a line break.

Is there another line break character that works on both? In the codex, \n or \n\n seem to work fine, is there a way to make the pre-mission briefing screen work the same?
Line break are needed for anything but the shortest briefings, and not using them in any briefing would make things very challenging.
+0 / -0
Use planetData.infoDisplay.extendedText to set the ingame text to be distinct from the campaign menu text. You will need this if you want to use line breaks.

There are two (relevant) delimiters for strings in lua. [[]] interprets the intervening text literally whereas "" interprets \ as an escape character for things like newlines. The tricky part is that sending the mission text ingame involves constructing a string that contains a lua table, sending it ingame, and executing it. The construction of the lua table is interrupted if you send a string with something like a newline.

I've added support for sending \n, \r, \t, \a, \v, and \" without breaking the string constructor. It is best to use the "" delimiters for strings involving such characters since I wouldn't trust [[]] to interpret the in-file newlines as desired in all cases.

Here is the fix: https://github.com/ZeroK-RTS/Chobby/commit/c056ed44d1d26ed896ca73a24a4f9992241939f7

Also note that very little space is available on the campaign screen. Some of the briefings hit the limit of what can fit on the smallest supported screen size (iirc 1200 x 800). For bigger briefings ingame you'll want to use extendedText.
+1 / -0
6 years ago
Great, everything seems to work now!

The extendedText option will be helpful. Being able to use a different text for the in-game briefing window gives a bit more leeway for writing.
I will probably have a more general story/planet/global text in the lobby window and another text more focused on the mission itself in-mission. Most of the current texts would be in-mission types.

I had completely missed the resolution constraints, good thing you caught that one early! I will work in 1200 x 800 to make sure everything fits, then.
+0 / -0