• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Stellaris Dev Diary #32 - Modding art

Hello Modders. Today's dev diary will be about modding art, and give a cursory glance at what is possible to do in Stellaris. We will mainly talk about characters and ships in this dev diary. Today we are releasing our Maya exporter, which opens up a whole new world of possibilities for modders. So, provided you have the skills in Maya and Photoshop, you can do anything you want - anything we have done, you can do too!

(more info and links can be found at the end of this post)


For characters, you have two options. The simpler one is static 2d avatars. These are just an image with transparency that is used directly in-game. They don't require Maya or any other fancy tools, and will likely be the initial choice for most modders. Static portraits are not used by the core game, but the functionality is there for the modders. There is an example for this in the games files, where we specify the species, so you just add textures and point to them in the files and you get new species.

01_character.jpg



All the characters we have created for Stellaris are animated 2D portraits. What we do is we draw characters in Photoshop, and split the images up into separate parts for anything that will be in a different layer, looking something like the picture below. We then create a plane for each asset in Maya, and layer them correctly.


02_character_split_up.jpg



If you want to create an animated character, you have two options. One, you can mod an existing one by modifying an existing character’s texture. This is desirable if you don't want to or can't use Maya for any reason but your Photoshop skills are high. This is a bit limiting of course, since you can only change the look so much within the confines of that character. The animations will of course be the same, so you can't move the eyes etc.
If you want to do this, take an existing texture and add some more colors to the entire texture, and you can see the entire area you have to work with.There is some space outside the edge of the character to work with.

Secondly, if you have some Maya skills, you have more freedom. The level of knowledge required is really not that high. Just creating a few planes, cutting, creating some joints and simple animations. What you do is you create texture similar to ours, then create a few different planes and cut out each area. Build a simple rig, and add some animation.

03_maya_character_cutup.jpg

04_character_rigged_side.jpg

05_character_rigged.jpg

You can also mod in more clothes, triggering the use of different outfits in different situations. In the game currently we use this for the different leader types such as scientist, admiral etc. We also use this for the rulers, so that if you are a militaristic society, your ruler will wear a military uniform. This has very few limits, and could be used to create some very unique characters.

There is another layer where you can add other things to you characters with the help of triggers. We use it to add the different hairstyles for the humans, but you could just as well add glasses to your characters, or some other visual attribute.

If you are feeling fancy, you could even extend a race to use multiple portraits. So that you insect race has a Queen model for your ruler, a lieutenant for you leaders, and a third model for your pops.

Though all the portraits in the game are shown as 2D, they are technically 3D and there is nothing really stopping you from adding a 3D model (though we have yet to try that ourselves).

If you wish to know exactly how to add new portraits, there is a detailed guide on the wiki:
http://www.stellariswiki.com/Portrait_modding



Moving on to to ships. With the release of our maya exporter, you can now create any model you like and add it to the game. The process is very straightforward. You build your mesh and use maya to export it. There is fairly little to be said simply because most things are theoretically possible to do. If you want ships with like 5 sections you can do that. Vertical ships? Sure. Organic ships? Absolutely.

Stations are also technically ships that don't move, so these are of course modable as well.


Code:
corvette = {
    max_speed = 5.25
    acceleration = 0.35
    rotation_speed = 0.1
    combat_max_speed = 1.5
    combat_rotation_speed = 0.08
    collision_radius = 2.0
    modifier = {
        ship_armor_add = 3
    }
    max_hitpoints = 300
    size_multiplier = 1
    fleet_slot_size = 1
    section_slots = { "mid" = { locator = "part1" } }
    num_target_locators = 2
    is_space_station = no
    icon_frame = 2
    base_buildtime = 60
    can_have_federation_design = yes
    enable_default_design = yes    #if yes, countries will have an auto-generated design at start 
 
    prerequisites = { "tech_spaceport_1" }
 
    class = shipclass_military
    required_component_set = "ftl_components"
    required_component_set = "combat_computers"
    required_component_set = "thruster_components"
    required_component_set = "ship_sensor_components"
}


You can place any number of locators on the ships. You can, for example, add locators to where on the ship enemies ships will aim, so that they don't all hit the center. You can also add locators for where the guns will be and where the engines are. You can easily add guns to your ship without having visible turrets, which is likely what most modders will do.

With all these new possibilities, I very much look forward to what the community will produce.


If you want to download the exporter right away, go to
https://accounts.paradoxplaza.com/profile/downloads

More details on the exporter can be found on the wiki:
http://www.stellariswiki.com/Maya_exporter

We also started a new sub-forum for the exporter.
https://forum.paradoxplaza.com/forum/index.php?forums/clausewitz-maya-exporter-modding-tool.935/



We have recently worked on support for static galaxies. This will allow users to create a specific galaxy to use for specific scenarios. In this test we have more than 5000 stars, which still renders smoothly. Might have to optimize the game a bit though :)

stellaris_dev_diary_31_01_20160502_galaxy_test.jpg


And also a video for you guys!
 
Last edited by a moderator:
  • 169
  • 62
Reactions:
And the biggest limitation to that is that Stellaris is a 32-bit app, meaning even with large address aware enabled you can only access 4GB. My 16GB RAM will go to waste...
A 32-bit app! I'm really disappointed on that one, surely we should be coding for 64-bit apps by now...
 
  • 6
Reactions:
A 32-bit app! I'm really disappointed on that one, surely we should be coding for 64-bit apps by now...

According to Steam stats almost a quarter of the market still uses a 32 bit OS. But I suspect that the real reason is that Clausewitz is a 32 bit engine since it was written a few years ago now. The proportion of 32 bit OS users was much higher at the time the engine was created.

Eventually Paradox will update its engine, and Clausewitz II or whatever it will be called will probably be 64 bit.
 
  • 1
Reactions:
The parameters for random galaxies are also defined in script, where you can decide number of stars/systems, radius of the galaxy, a value-range of allowed Empire's that may spawn and more. You can go above 1000 stars (the limit will be on your machine being able to run a game of that many/large Empires all doing stuff late-game). Example below;
Code:
setup_scenario = {
   name = "huge"
   priority = 4           #priority decides in which order the scenarios are listed
   num_stars = 1000
   radius = 450           #should be less than 500, preferably less than ~460
   num_empires = { min = 1 max = 39 }   #limits player customization
   num_empire_default = 29
   fallen_empire_default = 5
   advanced_empire_default = 8
   colonizable_planet_odds = 1.0

   etc...
}




Yeah, stuff like that is in the defines-file;
Code:
CORE_SECTOR_PLANET_CAP           = 5,   -- Too many planets in core sector will apply modifier inefficient_planet_management.
SECTOR_CAP                 = 2,   -- Too many sectors will apply modifier inefficient_sector_management.
SECTOR_CAP_INCR               = 0.25,   -- 0.25 means that for every four planets an extra sector can be created.


Thank you very much for the answer!
I will treasure it :)
 
@Aerie Will we be able to use DDS files for flags? By which I mean, can we use a EU4 eske flag file in replacement of a "dynamic" flag? So, if I were to be making a mod based on a universe where the flag had three colours to it, can I just use a dds image to replace their flag? Or will I have to settle with a two toned flag?
 
I wish I was born in the future ... only to play Stellaris with more than 1 billion stars and galaxies (and with elements from "Space Engine" and other fantastic games ... from 10.000 BC to infinity and even further. From a primitive society towards intergalactic superpower. ;)
 
Last edited:
Based on this information iam guessing you can change the number of max civilizations also?
 
  • 1
Reactions:
Just thought of something, say if I want to create a new-human like civ, will all pops use the same picture (assuming static image here) or will it be some way alternate between genders (assuming i get art for that in)?

I assume there will be some scripting involved ?

I am brans new at this, but I kinda want to give it a go :)
 
If I would like just to change something in an existing character, let's say making the skin of the humans blue and the eyes red, would I still need maya or is it sufficient to edit a single file via photoshop?
 
I suppose ill have to settle for a 2d image then... I didnt think it was Maya you guys used. Instead thinking it might be something like a .gif or something along those lines. Shame.

Still gonna make a first attempt at modding so as to truly Make Space Great Again with my race of obnoxious orange hairless orangutans....

H94Hw12.png

I cannot wait for this. :)
 
Are there any scripts in there where a layman could realistically create new races or change the ones already in existence by giving them racial bonuses like Master of Orion/Endless Space/etc? (Creating new mechanics wouldn't work for an amateur, but at least bonuses/maluses).
 
Most you could probably recreate to some extent in the default species creation tool.
Portraits are probably quite easy to add in (once you have them in the right format).

If more specialized traits are needed, you'd need to create those, not sure how difficult those would be to add to the game, but it should be possible.