Akkamaddi's Minor Race Madess, the mod!

A place for discussion of making game modifications.
akkamaddi
Posts: 107
Joined: Tue Sep 26, 2017 5:11 am

Akkamaddi's Minor Race Madess, the mod!

Postby akkamaddi » Sun Nov 12, 2017 8:58 pm

AKKAMADDI’S MINOR RACE MADNESS!

+++ TL/DR +++

What? - Adds six new minor races, three sessile, three mobile. One is not classified as “primitive”. Adds three “epic systems” new systems, which can be disabled, and associated text events.

What not? - No changes to game mechanics, techs, or factions. (Tacheed Tacheed could potentially become a faction in the future.)

Good idea if? - You like a diverse empire, and mixing races to best populate a planet. If you set races to “rare”, this can give more diversity between games.

Bad idea if? - You think minor races are a nuisance. (You will want to read “I think this race is stupid” below!)

- - The Mod - -

Hello, all! Let’s jump right in.

These files are modded for version r21606. I strongly recommend that you read through my post on “Useful Viscids, a simple player hack”, here:

viewtopic.php?f=5&t=599

My intent is to NOT update this mod with every new revision of Stars in Shadow (SiS). I will update it when changes to SiS or to the mod make it appropriate. You can either use the -noupdate option on your game to stop updates, or re-merge the data with each update. I have tried to bundle the modded data to make this easy to do, as it is how I handle my game.

The package files do not include my modified Viscids. If you like this mod, you may wish to combine it with the Viscid alteration.

WHAT DO TO

Download the zip file below. Extract the contents to a location outside the game folder.

EDIT: SEE UPDATE BELOW FOR NEW VERSION.

(link goes to Media Fire)

If you are using the version that matches this, you can simply copy the Lua State folder into the Mods folder of the game on your hard drive, but the assets will have to be copied as discussed below. If you are using a different or modded version, you will have to merge the data.

I find it easier to then open two file explorer windows, one to the extracted mod contents, and one to the SiS game folder.

Also, do this when the game is closed.

If using Notepad, use “save” and not “save as”, so .txt does not get appended to the files. All the warning I discus in my Viscid post apply here, so read that first.

Double check your work. Work carefully. Be sure to respect boundaries, and not break bracket [] and brace {} pairs inappropriately.


- Image assets

In the game directory, go to the folder Lua state\Drawers\PopIcons\.

In the mod content window, go to the same folder. You will want to copy the folders under “chibi” and “normal” from the mod content folders to the game folders.

Very Important : Assets must go in the main Lua state folder, not the one under Mods. If you put the image assets under Mods, the game will not see them and will crash. All the .lua files go in under Mods, but the .png files and their .table files must go in the main Lua state.


- LUA files

If you are using r21606, you can simply copy the files under Mods\Lua state\ in the mod package into \Mods\Lua state\ in the SiS folder. If the version has changed, or you have other modifications, you will have to copy the content manually.

The rest of this section assumes we are merging the contents.

You will create the following file structure under Mods. See the post on the Viscids for more details. Copy (copy, don’t move) the files from the Lua state folder in the game into the Mods folder for alteration. This will match the folders and files in the mod package.

Mods\Lua state\
folder: @Technology
- file: RACES.lua
folder: Galaxy
- file: planet_types.lua
- file: pop_morale.lua
folder: Orders
- file: farming.lua
folder: Orders\encounters
- file: misc_planet_specials.lua
- file: misc_star_specials.lua
folder: Setup
-file: epic_systems.lua
-file: forced_planets_fun.lua

Once copies of the originals are in place, we begin merging the actual data. We will go through each file. The content in the mod is as contiguous as possible, and marked with comments. Search for “#ADD”, as the sections are marked with

Code: Select all

-- #ADDITION
-- #ADDITION end


or similar comments.

Use your text editor (Notepad is native to windows, but a programmer editor like Notepad++ is recommend) to open the base in Sis\Mods and mod content files at the same time, use search, and copy/paste the content.

folder: @Technology
- file: RACES.lua

This file has two blocks of text, including the largest one (biographies and descriptions). Search for “-- #ADDITIONS” to find the first block. It is after the Humans entry, and starts with the Abbizi entry. It goes down 260 lines. It is important that the inserted block goes before the end-brace } that comes before the “local noun_forms” section. Respect boundaries.

The next session deserves special mention:

Code: Select all

  ['hover tanks'] = {
    singular = 'hover tank',
  }, -- <- Make sure there is a comma here!!! <- 
 
  -- #ADDITIONS, and make sure there is a comma after the hover tanks entry above.
 
   Abbizi = { plural = "Abbizi" },
   ['Tacheed Tacheed'] = { plural = 'Tacheed Tacheed', },
   ['Bound Spectrals'] = { singular = 'Bound Spectral', },
   Tzidpah = { plural = "Tzidpahot" },
   Bobaoshi = { plural = "Bobaoshi" },
   Kanparush = { plural = "Kanparush" },
 
  -- #ADDITIONS end, *before* the end brace below
}


Find ‘hover tanks’. It is important to know that there is no comma in the core files after the hover tanks entry. As noted in the comment in the mod file, you must add a comma so the section can get the additional entries starting with Abbizi.


folder: Galaxy
- file: planet_types.lua

This file also has two sections. The first is only six lines and labeled

Code: Select all

  -- #ADDITION, population density


The second is longer and labeled

Code: Select all

-- #ADDITION, reproduction rate


- file: pop_morale.lua

This is a single line addition. It lets the races become dissidents.

Code: Select all

-- #ADDITION, can be unhappy


folder: Orders
- file: farming.lua

This is one large block, indicating which environments a given race can farm. Look for

Code: Select all

-- #ADDITION
-- #ADDITION end


folder: Orders\encounters
- file: misc_planet_specials.lua

Look for

Code: Select all

-- #ADDITION to end of file


It is important to note that if you have a do/end section, the game DOES NOT LIKE anything after the “end” statement. Do not add any commented notes after the final end. The file should stop on the end.

These are the text events when a scout ship with sensors discovers the three races that occur in epic systems.

- file: misc_star_specials.lua

Look for

Code: Select all

-- #ADDITION to end of file


It is important to note that if you have a do/end section, the game DOES NOT LIKE anything after the “end” statement. Do not add any commented notes after the final end. The file should stop on the end.

These are the text events when a scout ship with sensors enters the three star systems that are generated by epic systems.

folder: Setup
-file: -- #ADDITIONS

Look for

Code: Select all

-- #ADDITIONS
-- #ADDITIONS end


Insert this carefully, as the file epic_systems.lua is particularly snarly about anything it doesn’t like. Also, avoid block comments here. (more later)

-file: forced_planets_fun.lua

And finally, copy the block

Code: Select all

-- #ADDITIONS
-- #ADDITIONS end


to the main file. There are block-commented planets. Copy them as well.

At this point, start the game.

If you get an error, click on the error display and then click the up arrow key. (Discovering that window scrolls up was a big deal for me.) You can then find the file and line that is crashing the game. The issue is usually a broken boundary. Double check your work.


ADDITIONAL NOTES and FAQ

- What happens?

Three new systems (the “epic systems”) are generated, which contain home worlds of three races.

Three planets are randomly inserted, which are home worlds for three other systems. (More notes on this below.)

- CREDITS.txt

This file does not have to be copied. It is an attribution file. My drawing skills could most graciously be described as “paltry”, but I have some background in photo editing. It is links to my sources and what I used. Please keep this in mind before complaints about the art. I know it’s not my talent.

- reduce mod’s footprint

If you want to minimize the footprint of this mod, that can be done by removing the files epic_systems.lua, misc_planet_specials.lua, and misc_star_specials.lua. This will remove the three standardized star systems, and the text events associated with them.

If you do this, go into forced_planets.lua and remove the block comment marks around the three planets. This will re-add them as individual planets inserted into random star systems. The species discover text from RACES.lua will be used when the races are discovered.

- I think this race is stupid…

Don’t worry, that’s easy to fix. This also works if there is a race you really don’t like in the main game. The races are only introduced through their home world, and so can be excluded by simple edits.

If the race is introduced through forced_planets.lua:
- If you want to keep the planet, add a double-minus -- in front of the special = natives line, so

Code: Select all

special = { 'natives', pop = {tzidpah=3, }, farms=1, },


becomes

Code: Select all

-- special = { 'natives', pop = {tzidpah=3, }, farms=1, },


- If you want to remove the planet use block comments --[[ ]]--, as is already done with Kanbru, Zazachi Zazachi, and Hope Falls.

If the race is introduced through epic_systems.lua:
If you want to keep the system, you can comment out the pop and encounter specials lines. However, epic_systems.lua does not like block comments if there is already a block text field in the system. The best thing to do is delete the system from the file. I’ve commented the beginning and end of each system block to make this easy.

- The Tacheed Tacheed

The Tacheed Tacheed are a race that originally developed interstellar travel. They are not primitive. What this means is that they will colonize planets and enter colony ships. They are not a stellar empire, but they can join one with ease.

This means that if a computer controlled empire absorbs the Tacheed Tacheed, that empire could begin to colonize planets and spread with Tacheed Tacheed. (The same thing happens if an AI empire annexes a marauder base or refugee planet.)

If yo do not want this, go to RACES.lua. Under their section the entry for “primitive” is commented out. Remove the double dash. Primitive races will not form new colonies, but must be manually move. (They also do not use defense improvements.)

- Support

Post mistakes, and I will try to fix them and re-post the mod files. I will try to answer questions. Before asking, if you get an error, look at the error output in the game, scroll up, and look closely at the file indicated there. Also, post that here. The most common issue is missing a comma or breaking boundaries.

Also pay special attention to the second section in RACES.lua, as a comma must be added before the mod additions.

I have a full time job, but I check the forum daily.

- I think you should do this…

Please share. I may not make alterations without good reason, but others may want to try what you do. If you want to change a race to your liking, by all means do so! I did that with the Viscids.

- So can I do this…?
Please do not re-post my mod package with only minor changes. Post instructions on the alterations you like.

- I can do much better art!

Feel free. :D You can even post it. I just have a few requests.
- DO NOT re-post my mod package to include new art. See the above question. You can post the art separately here. If you include working table files, and everything packaged, even better.
- If you are associating something to one of my mods, please have an attribution text file, and don’t use stolen art. Just because something appears on a Google search doesn’t mean it’s public property. I know I can’t enforce this, but that is my request.

- Can I bundle this?

Most likely, yes, but please ask me. (I will probably ask if the work is attributed and from public domain sources.)

- Are you selling this?
- Is there “freemium” content?


No. I would rather not wade into that legal mess. If this is something you would pay for, buy the current or next SiS DLC pack, so SiS and its modding continues.

If you own the DLC and want to be nice, donating a few dollars/euro to a reputable children’s charity or relief organization in my behalf is something I would see as a great compliment. :-)

- Will this be expanded?

My original intent was to have the Tacheed Tacheed not be on a planet, but in an inert colony ship and a few cargo vessels. I was never able to get the ships to spawn, and given work events in real life, I decided to simply close this work and get it posted. I will definitely return to that idea later, as I think it’s an interesting way to introduce a race.

There were also a few minor race ideas I may revisit at a later time. I think this is enough for now.

Otherwise, there are a few different idea I would like to try pursuing.

- - REMOVING THE MOD - -

To clean house, simply remove the .lua files from the Mods folders. The image files can be removed or left behind. The images will not be called if there is no content.

If you remove the .lua files, and saved games that use this content will no longer load.
Last edited by akkamaddi on Thu Dec 28, 2017 4:56 am, edited 1 time in total.

akkamaddi
Posts: 107
Joined: Tue Sep 26, 2017 5:11 am

Re: Akkamaddi's Minor Race Madess, the mod!

Postby akkamaddi » Sun Nov 12, 2017 8:58 pm

This gives some basic information about what is added by the mod.

Skip this if you would prefer to try it knowing nothing.

# Start anti-spoiler buffer.
#
#
#
#
#
# Anti-spoiler buffer.

Planet: Betho
Betho, a large Ice Ball, is the home of the Abbizi. These are deep ocean creatures who dwell around vents, similar to the Orthin. They are industrious and tend public gardens teeming with edible life. They can farm on planets with vents, similar to the Orthin, but do poorly on dry land.

Planet: Mafirtes
Mafirtes is the Island world that is home to the shelled Tzidpah. They are aquatic reef dwellers, tied to their home world. Hard workers, they can tend flourishing farms in shallow waters, but do poorly in dry areas.

Planet: Aruhlund
The Glacier world of Aruhlund is the home of the Bobaoshi, peaceful bovid humanoids willing to follow a charismatic leader. They are quite comfortable in cold environment, and can grow edible mosses and lichens in these environments.

Star: Tenebrighante /te.ne.bree.JAN.te/, a giant Blue White star
Planet: Espero Falas
This is where the Bound Spectrals are trapped. Their nature is a mystery. They seem to manifest the memories of the beings killed on the planet early in the Great War. They are incorporeal, and can remember things from an age of much greater technological advancement, but their behavior is erratic. An uprising here would go poorly for the empire trying to hold the colony. Artifacts of the old culture remain.

Star: Oothoa /oo.THOW.ah/, a cooler Orange star
Planet: Zazachi Zazachi
This is where the Tacheed Tacheed hid from the Destroyers and made their home. While they avoided signs of technology to remain hidden, they are an advanced race, capable of quickly adapting to a space faring empire. The Tacheed Tacheed thrive in dry environments, and can farm arid deserts. They do not like water, and do not adapt to aquaculture, but can still farm if there is some dry land.

Star: Anjia /an.JEE.a/, a main sequence Yellow starting
Planet: Kanbru
This large Inferno world is the home of the Kanparush, floating predators who have recently attained sentience. They are naturally violent, and given the dangerous environment, this could be a difficult planet to acquire. The natural mineral wealth of the system could make the effort worthy. The Kanparush would not survive outside their native environment.



TRIVIA

Tacheed Tacheed: The name is an homage to the “Tachidi” of Master of Orion 3. I particularly like it because it sounds like a cricket. Also, “Oothoa” is a reference to an insect egg case.

Tzidpah: “Tzidpah” is Hebrew for clam or a generic bivalve, and “Mafirtes” means bay (according to the wisdom of Google Translate).

The Bound Spectral system names are Esperanto. Tenebrighante means “while becoming a shadow”. The planets are “A Tear”, “To Sigh”, “Hope Falls”, and “Forget”.

# Anti-spoiler buffer.
#
#
#
#
#
# End anti-spoiler buffer.

akkamaddi
Posts: 107
Joined: Tue Sep 26, 2017 5:11 am

Re: Akkamaddi's Minor Race Madess, the mod!

Postby akkamaddi » Thu Dec 28, 2017 5:06 am

This update is built with files from r21704 (from 12/23/17).
If you are using that version, you must copy the assets, but you can copy the Lua State folder into the Mods folder. Otherwise, you will have to merge data.

http://www.mediafire.com/file/bugmeeei1 ... 171227.zip

(Link goes to a MediaFire download page.)

Changelog

The main change is a fix to the farming.lua files. Most of the races will no longer use default farming values for what worlds they find fertile. This means that Abbizi can farm on Iceball worlds and Bobaoshi can farm on Glacier worlds. (Tacheed Tacheed already worked properly.)

Fixed a spelling error in a comment.

Changed an entry from single quote ' ' to double quote " ". This did not make a difference in testing, so do not think it was a mistake that did anything.

NOTE:
(Possible Spoiler)
Zazachi Zazachi is a Small world with four population units, because this is a somewhat technical society. Yes, this means that if you colonize them, you may have to move a population off the planet. If you find this too annoying, simply open the Forced Planets lua file and change the default population from 4 to 3.

wminsing
Posts: 125
Joined: Tue Feb 03, 2015 1:51 am

Re: Akkamaddi's Minor Race Madess, the mod!

Postby wminsing » Tue Jan 16, 2018 4:59 pm

This looks extremely awesome! Might backup my SiS files tonight and try to install it.

-Will

akkamaddi
Posts: 107
Joined: Tue Sep 26, 2017 5:11 am

Re: Akkamaddi's Minor Race Madess, the mod!

Postby akkamaddi » Wed Jan 17, 2018 1:58 am

Thank you!
It looks like r21704 is still current. This means you can simply copy the LUA files to the Mods folder and not have to manually merge stuff.

If you are working with Chasm's re-balance mod, we change some of the same files. In theory, if you change the mod folder for Chasm's to put "zz_" in front of it, his files will overwrite mine, but I do not change anything vanilla in this mod. I have not tried it... that will be a project for me this week. :D I think that his being read after mine will only overwrite the vanilla data, but leave mine in memory.

The main thing is to be careful placing the image assets. The game gets very unhappy if assets are not in place. Hopefully in a future version assets called by a mod can go into the mod folder.

Skimming through the instructions could be useful if you want to "eliminate" a race you don't like, or eliminate the pre-made systems and events in favor or generic planets.

wminsing
Posts: 125
Joined: Tue Feb 03, 2015 1:51 am

Re: Akkamaddi's Minor Race Madess, the mod!

Postby wminsing » Wed Apr 04, 2018 2:14 pm

So I finally took a crack that this yesterday; I tried just copying the files to mods (and the pop icons), hit an error when I first encountered a new species. Tried to manually merge and had a different error again when I first encountered a new species. Do want me to post my issues?

-Will


Return to “Modding”

Who is online

Users browsing this forum: No registered users and 2 guests