Raana Posted January 14, 2018 Posted January 14, 2018 With all of the ideas now floating around for modding Stellaris I thought it might be a good idea to have a designated thread for helping each other out and passing around ideas. That way we can avoid hijacking already existing threads and maybe coordinate some tie-ins between mods and avoid potential overlaps as well. Also, Passing around suggestions for event image artwork could be another thing to link in this thread. There is also a Discord chat server started by mk40 for discussing Stellaris modding: https://discord.gg/TrkNsGU Edit: I need to update the list of up-to-date mods. 5
mk40 Posted January 15, 2018 Posted January 15, 2018 Interesting idea for the icons shape. I personnaly prefer to use the original shape, but why not. Too bad, I didn't saw your post before, otherwise I would have post this here: https://www.loverslab.com/topic/90666-stellaris-sexual-gameplay-v/?page=6&tab=comments#comment-2117179
Raana Posted January 15, 2018 Author Posted January 15, 2018 I actually just saw that post too and I was considering doing the same thing myself. I figured the altered shape would be a good way to set them apart from the vanilla icons, given the theme they're part of, and if anything I plan to use them in my own mod at least.
darkspleen Posted January 18, 2018 Posted January 18, 2018 I found working with on_actions to be both highly rewarding and, at times, incredibly frustrating. So here's a notes that might help you out while modding. Some on_actions don't have any scopes while others do. The best way to figure out which have scopes and which don't is too look at the on_action file in the game's folder. You can use on_actions such as on_yearly_pulse and on_five_year_pulse to have events repeat. # No scope, like on_game_start on_yearly_pulse = { events = { interstellar_exchange.1 } } In my mod, Massa (yes I'm shamelessly plugging my mod in here), I use an on_yearly_pulse to call an event called interstellar_exchange.1 This event is then used to randomly select one of three country events. # Interstellar Exchange Caller event = { id = interstellar_exchange.1 hide_window = yes is_triggered_only = yes immediate = { every_country = { limit = { is_ai = no } random_list = { 50 = { country_event = { id = interstellar_exchange.2 } } 30 = { country_event = { id = military_affairs.1 } } 20 = { country_event = { id = robotsex.1 } } } } } } You can also randomize when exactly these events will fire by doing something like country_event = { id = robotsex.1 days = 50 random = 5 } which will set it up so that the event robotsex.1 will fire 50 days from now plus or minus five days. When an on_action specifies scope that means that scope applies to whats in its own brackets and not what it may be calling. A solid example of this is the on_action on_planet_occupied. It specifies ROOT as being the planet, FROM as the planet owner, and FROMFROM as the planet occupier. What this means is if you have it set up so on_planet_occupied calls an event, that event will NOT have those same scopes (I think you can do things like PREVROOT and whatnot, but I haven't tested that yet). I HIGHLY recommend you try using save_event_target_as when using on_actions as it can make things a lot simpler for you. # A planets controller becomes a country not the same as the owner. # Root = Planet # From = Planet Owner # FromFrom = Planet Controller (the one occupying) on_planet_occupied = { FROMFROM = { save_event_target_as = planet_occupier } FROM = { save_event_target_as = planet_owner } ROOT = { save_event_target_as = invasion_location } events = { sexyplanet_war.gate } } This way further done the chain I can simply use event_target:planet_occupier whenever I want to do something with the planet's occupier. # Fires on on_planet_occupied from on_actions planet_event = { id = sexyplanet_war.gate hide_window = yes is_triggered_only = yes immediate = { event_target:planet_occupier = { country_event = { id = sexyplanet_war.1 } } event_target:planet_owner = { country_event = { id = sexyplanet_war.2 } } } } #Spoils of War (Attacker) country_event = { id = sexyplanet_war.1 title = "sexyplanet_war.1.name" desc = "sexyplanet_war.1.desc" picture = GFX_xeno_gangrape_1 show_sound = event_ground_battle location = event_target:invasion_location is_triggered_only = yes option = { name = sexyplanet_war.1.a } option = { name = sexyplanet_war.1.b Trigger = { event_target:planet_occupier = { OR = { has_ethic = ethic_militarist has_ethic = ethic_fanatic_militarist } } } add_influence = 10 } } If this sounds like common sense to you then great! You are probably better at programming than I who spent days pulling his hair out trying to make an event fire whenever a planet was occupied (yes I figured it out and yes this code DOES work in game). For the rest of you hopefully I'll have saved you some of the pain I've suffered and maybe given you some ideas for your own mods. 2
Raana Posted January 18, 2018 Author Posted January 18, 2018 While I hadn't any immediate plans for occupation events I'll have to keep those in mind if I do get any ideas. The first two scripts, however, will be useful for some of the events I'm working on. I will need to make some minor adjustments since I want different events to trigger off of different conditions, but I think I saw the limit conditions I need in the vanilla files. So I don't think it'll be too tricky to do (could be wrong though haven't messed much with events until now).
darkspleen Posted January 18, 2018 Posted January 18, 2018 Feel free to ask if you've got any questions.
Raana Posted January 20, 2018 Author Posted January 20, 2018 I suspect I'll need some help when I start working on the second part of my mod. I'm planning on adding a number of 0 point cost "-phile" species traits exclusive to each other that I'm planning on tying each to an empire-wide sort of story event chain. Somewhat similar to the precursor events, but without the crapshoot that is finding each objective on planetary surveys. Though if anyone knows the proper -phile prefix for something with tentacles I would appreciate it. I'm using cephalophile at the moment because cephalopods are tentacled creatures usually, but the actual cephalo- prefix actually means that something's "related to the head or skull."
darkspleen Posted January 20, 2018 Posted January 20, 2018 I'm going to be toying around with a few possibilities for starting event chains that don't rely on surveys for the Primordial chain. A few things that might work though is 1) linking it to an on_action such as on_game_start or on_annual_pulse. 2) Give it a mean_time_to_happen. 3) Set it up to be similar to the Worm-in-Waiting event chain in that it activates when a ship of yours enters a system of a blackhole (you could probably set it up for any type of star or planet).
Raana Posted January 28, 2018 Author Posted January 28, 2018 Scratch my previous troubles with opinion modifiers. Managed to figure them out so I can mix and match positive and negative AI empire opinions now. Also, here's a preview and a download for the vector .svg file of the heart-shaped icons I'll be using in my own mod. If anyone's interested in using them as well. Traits.svg 2
Raana Posted February 8, 2018 Author Posted February 8, 2018 I updated the first post with the discord link (I think that's the right link) so there's an easy location to find it. I also added some links to the more gameplay oriented Stellaris mods for the same reason. I know there are species portrait mods as well, but aside from Sexy Xenos I'm not sure which ones are up to date, and in the case of the Kagami species I'm not familiar with the setting they're from. So I'm not sure what to put as summaries for download links.
darkspleen Posted February 20, 2018 Posted February 20, 2018 This is driving me nuts. #Futa sadists (hidden) planet_event = { id = sexycolony.3 hide_window = yes is_triggered_only = yes trigger = { has_owner = yes has_ground_combat = no is_occupied_flag = no Owner = { has_technology = tech_gene_tailoring } count_pops = { limit = { is_non_sapient_robot = no pop_has_trait = trait_behavior_sadistic is_enslaved = no } count > 2 } count_pops = { limit = { is_non_sapient_robot = no OR = { NOT = { pop_has_trait = trait_behavior_sadistic } AND = { pop_has_trait = trait_behavior_sadistic is_enslaved = yes } } } count > 2 } } immediate = { owner = { country_event = { id = sexycolony.4 } } while = { limit = { count_pops = { limit = { is_non_sapient_robot = no is_enslaved = no pop_has_trait = trait_behavior_sadistic has_modifier = sadomasochist_fun } count < 2 } } random_pop = { limit = { is_growing = no pop_has_trait = trait_behavior_sadistic is_enslaved = no NOT = { has_modifier = sadomasochist_fun } } add_modifier = { modifier = sadomasochist_fun days = 100 } } } While = { limit = { count_pops = { limit = { is_non_sapient_robot = no NOR = { has_modifier = sadomasochist_fun has_modifier = abused_by_sadist } OR = { Not = { pop_has_trait = trait_behavior_sadistic } enslaved_sadist = yes } } count < 2 } } random_pop = { limit = { is_non_sapient_robot = no NOR = { has_modifier = sadomasochist_fun has_modifier = abused_by_sadist } OR = { Not = { pop_has_trait = trait_behavior_sadistic } enslaved_sadist = yes } } IF = { limit = { This = { pop_has_trait = trait_behavior_masochistic } } add_modifier = { modifier = sadomasochist_fun days = 100 } else = { add_modifier = { modifier = abused_by_sadist days = 100 } } } } } } } So what's supposed to happen is that it calls a separate event which gives the description and image (this is due to limitations of the diplomatic window) and then find two sadist pops and give them the modifier sadomasochist_fun and then find another two pops who are either not sadists or are enslaved sadists and give them another modifier. I've tried everything, but I can't get it to look for those other pops (the nonsadists or enslaved sadists) and give them the modifier. The error log also isn't bringing up any issues. I'm at a complete loss here.
Raana Posted February 20, 2018 Author Posted February 20, 2018 I'll admit I'm not super familiar with event modding yet so this may not necessarily help, but I remember trying a similar setup with an event that was separated by normal empires, hive empires and machine empires. The intent was an event that would trigger when a leader leveled. It would pick which empire type the empire it triggered for qualified as. Then it would go through the process of randomly deciding if it would assign an appropriate trait, themed to the empire type, to the leader. It always worked for the normal empires because they were first on the list to be checked, but it never worked for the other two. I ended up having to separate each leader level check into their own events. Something I would try is maybe put an AND = {} around the two count_pops in the trigger portion. Since I'm guessing you want it to only trigger when both are true for the world. Then you may have to separate the second population modifier application into a second, hidden event that is triggered. Again, not sure if that will actually work, but it's the best guess I can think of with what I know about event scripting.
Raana Posted February 24, 2018 Author Posted February 24, 2018 On 2/20/2018 at 12:40 AM, darkspleen said: Hmm... Well its certainly worth a try. Out of curiosity, did it work? Also, for anyone interested. The Apocalypse update either changed or removed some of the modifiers used before the update so I had to go through and figure out which ones still worked for another mod of mine. So here's the list of modifiers I know still work (assuming I didn't miss any) for anyone that wants to use them. I tried splitting them into categories based on what they do: Spoiler General and/or Uncategorized all_technology_research_speed = 0.10 num_tech_alternatives_add = 1 max_rivalries = 5 rivalry_influence_gain = 0.5 diplomacy_influence_cost = -0.5 leader_age = 10 leader_cost = 0.20 leader_skill_levels = 1 species_leader_exp_gain = 0.25 faction_influence_mult = 0.3 faction_happiness = 0.2 terraforming_cost_mult = -0.25 terraform_speed_mult = 0.25 edict_cost = -0.10 edict_length_mult = 1.00 force_disparity_fire_rate_mult = 0.5 # NEW in Apocalypse megastructure_build_speed_mult = 1.00 damage_vs_country_type_fallen_empire_mult = 0.33 damage_vs_country_type_awakened_fallen_empire_mult = 0.33 mod_distance_to_capital_static_modifier_efficiency_mult = -0.5 BIOLOGICAL_species_trait_points_add = 1 ROBOT_species_trait_points_add = 1 modify_species_cost_mult = -0.1 Specific Research Branches category_materials_research_speed_mult = 0.1 category_propulsion_research_speed_mult = 0.1 category_voidcraft_research_speed_mult = 0.1 category_industry_research_speed_mult = 0.1 category_field_manipulation_research_speed_mult = 0.1 category_particles_research_speed_mult = 0.1 category_computing_research_speed_mult = 0.1 category_psionics_research_speed_mult = 0.1 category_new_worlds_research_speed_mult = 0.1 category_statecraft_research_speed_mult = 0.1 category_biology_research_speed_mult = 0.1 category_military_theory_research_speed_mult = 0.1 Country and Subject Modifiers country_resource_energy_mult = 0.20 country_resource_minerals_mult = 0.20 country_resource_food_mult = 0.20 country_resource_unity_mult = 0.10 country_resource_influence_mult = 0.10 country_resource_influence_add = 1 country_physics_tech_research_speed = 0.1 country_society_tech_research_speed = 0.1 country_engineering_tech_research_speed = 0.1 country_leader_cap = 1 country_leader_pool_size = 5 country_core_sector_system_cap = 5 country_sector_cap_add = 5 country_trust_growth = 0.50 country_trust_cap_add = 50 country_trade_attractiveness = 0.05 country_unrest_unhappy_pop_effect_mult = -0.10 country_unrest_unhappy_slave_effect_mult = -0.25 country_naval_cap_add = 80 country_naval_cap_mult = 0.1 country_command_limit_add = 20 country_ship_upgrade_cost_mult = -0.20 country_starbase_influence_cost_mult = -0.20 # NEW or CHANGED in Apocalypse country_starbase_upkeep_mult = -0.10 # NEW or CHANGED in Apocalypse country_starbase_capacity_add = 2 # NEW or CHANGED in Apocalypse country_claim_influence_cost_mult = -0.20 country_border_friction_mult = -0.5 country_vassal_naval_capacity_contribution_mult = 0.50 country_subject_acceptance_add = 20 country_subject_power_penalty_mult = 2.0 country_subject_trust_cap_add = 50 country_subject_technology_sharing_mult = 0.30 country_integration_cooldown_mult = -0.50 subject_integration_influence_cost_mult = -0.5 subject_tribute_mult = 0.125 subject_influence_gain_mult = 0.5 Tile Modifiers tile_resource_energy_mult = 0.10 tile_resource_minerals_mult = 0.10 tile_resource_food_mult = 0.10 tile_resource_unity_mult = 0.10 tile_resource_physics_research_mult = -0.75 tile_resource_society_research_mult = -0.75 tile_resource_engineering_research_mult = -0.75 Planetary Modifiers planet_migration_all_pull = 0.25 planet_migration_xeno_pull = 0.50 planet_building_cost_mult = -0.1 planet_building_upkeep_mult = -0.15 planet_building_build_speed_mult = 0.10 planet_clear_blocker_cost_mult = -0.25 planet_clear_blocker_time_mult = -0.25 planet_unrest_mult = -0.1 planet_orbital_bombardment_damage = -0.75 planet_army_build_speed_mult = 0.50 planet_army_build_cost_mult = -0.25 planet_colony_development_speed_mult = 1.00 colony_start_num_pops_add = 1 tradition_cost_num_colonies_mult = -0.20 # CHANGED in Apocalypse (used to be Xeno pops) Population Modifiers pop_growth_speed = 0.10 pop_happiness = 0.05 pop_owner_happiness = 0.05 pop_other_species_owner_happiness = 0.05 pop_citizen_happiness = 0.05 pop_other_species_happiness = 0.05 pop_eff_wo_slaves = -0.1 pop_environment_tolerance = 0.05 pop_resource_output = 0.05 pop_slave_resource_output = 0.10 slave_mineral_output = 0.10 slave_food_output = 0.10 pop_robot_upkeep_mult = -0.10 pop_robot_build_speed_mult = 0.33 pop_robot_production_output = -0.20 pop_consumer_goods_mult = -0.15 pop_food_req_mult = -0.15 pop_migration_speed = 0.5 pop_resettlement_cost_mult = -0.5 pop_government_ethic_attraction = 0.50 pop_ethics_shift_speed_mult = 0.5 pop_ethic_xenophile_attraction_mult = 0.5 pop_ethic_xenophobe_attraction_mult = 0.5 pop_ethic_authoritarian_attraction_mult = 0.5 pop_ethic_egalitarian_attraction_mult = 0.5 pop_ethic_materialist_attraction_mult = 0.5 pop_ethic_spiritualist_attraction_mult = 0.5 pop_ethic_militarist_attraction_mult = 0.5 pop_ethic_pacifist_attraction_mult = 0.5 Ship Modifiers weapon_type_kinetic_weapon_damage_mult = 0.15 weapon_type_energy_weapon_damage_mult = 0.15 weapon_type_explosive_weapon_damage_mult = 0.15 ship_upkeep_mult = -0.05 ship_weapon_damage = 1.0 ship_weapon_range_mult = 0.5 ship_hull_add = 50000 ship_shield_add = 100000 ship_hull_mult = 1.0 ship_armor_mult = 1.0 # CHANGED in Apocalypse ship_shield_mult = 1.0 ship_evasion_mult = 0.05 ship_disengage_chance_mult = 0.25 # NEW in Apocalypse ship_hull_regen_add_perc = 0.5 ship_armor_regen_add_perc = 0.5 # NEW in Apocalypse ship_shield_regen_add_perc = 0.5 ship_hull_regen_add_static = 10 ship_armor_regen_add_static = 20 # NEW in Apocalypse ship_shield_regen_add_static = 30 ship_tracking_add = -5 ship_fire_rate_mult = 0.20 ship_home_territory_fire_rate_mult = 0.40 ship_speed_mult = 0.20 ship_interstellar_speed_mult = 0.50 #Note: Doesn't work in civics. ship_speed_reduction = 0.5 #Note: Doesn't work in civics. ship_sensor_range_add = 2 ship_anomaly_generation_chance_mult = 0.10 ship_anomaly_research_speed_mult = 0.20 ship_anomaly_fail_risk = -0.10 science_ship_survey_speed = 0.25 shipclass_science_ship_evasion_add = 30 Ship Class Modifiers shipsize_corvette_build_cost_mult = -0.2 shipsize_destroyer_build_cost_mult = -0.2 shipsize_cruiser_build_cost_mult = -0.2 shipsize_battleship_build_cost_mult = -0.2 shipsize_colonizer_build_speed_mult = 1 shipsize_colonizer_build_cost_mult = -0.5 shipsize_science_build_cost_mult = -0.25 shipsize_constructor_build_cost_mult = -0.25 shipsize_mining_station_build_cost_mult = -0.25 shipclass_military_station_build_cost_mult = -0.15 #Defense Platform shipclass_military_station_damage_mult = 0.25 #Defense Platform shipclass_military_station_hull_mult = 0.25 #Defense Platform shipsize_military_station_small_build_cost_mult = -0.33 #Defense Platform, Not sure if the same type as above shipsize_military_station_small_build_speed_mult = 1.00 #Defense Platform, Not sure if the same type as above Starbase Modifiers (all are either new or their usage was changed in Apocalypse) shipclass_starbase_damage_mult = 0.25 shipclass_starbase_hull_mult = 0.10 starbase_shipyard_build_cost_mult = -0.10 starbase_shipyard_build_speed_mult = 0.20 starbase_module_build_cost_mult = -0.1 starbase_upgrade_cost_mult = -0.20 starbase_upgrade_speed_mult = 1.00 starbase_defensive_war_ship_build_speed_mult = 1.00 Army Modifiers army_starting_experience_add = 100 army_experience_gain_mult = 0.33 army_upkeep_mult = -0.15 army_damage_mult = 0.15 army_attack_damage_mult = 0.5 army_defense_damage_mult = 0.2 army_morale_damage_mult = 0.15 army_morale = 0.2 army_attack_morale_mult = 0.5 army_defense_morale_mult = 0.5 army_health = 0.5 army_attack_health_mult = 0.5 army_defense_health_mult = 0.5 army_disengage_chance_mult = 0.20 # NEW in Apocalypse army_collateral_damage_mult = -0.33 # NEW in Apocalypse Editing as I find more. 2
darkspleen Posted February 24, 2018 Posted February 24, 2018 No, though the DLC seems to have changed something so that it works now (needs further testing).
Raana Posted February 24, 2018 Author Posted February 24, 2018 I suppose I wasn't really sure it would, but go figure on it working after the update. The devs must've changed how the scripting is handled or something.
darkspleen Posted February 24, 2018 Posted February 24, 2018 Yea. Same thing with how the diplomatic windows work. Suddenly they are functionally similar to event windows. Or at least more so.
oldbarky Posted March 16, 2018 Posted March 16, 2018 Hey there, totally newbie here. I thought about jumping into modding Stellaris. Got bit of coding experience, and so far, event doesn't seem to bother me. Though, I'm having some problem with .dds files. For some reason, when I convert png to dds, the icon looks a bit blurry. What program do you all use to make the dds files? And a question to the community. What kind of mods do you all wish to see? Certain fetish? More image pack?
mk40 Posted March 16, 2018 Posted March 16, 2018 2 minutes ago, oldbarky said: What program do you all use to make the dds files? I personnaly use Photoshop with Nvidia DDS plugin (and Intel DDS plugin in some cases). Btw, don't hesitate to join Stellaris Sexy Modding Discord: https://discord.gg/9drg3kK
darkspleen Posted March 16, 2018 Posted March 16, 2018 I could never get photoshop to save in DDS format, even with the Nvidia plugin.
mk40 Posted March 16, 2018 Posted March 16, 2018 You could always get Photoshop CS2 (this version is free since 2013). Or alternatively, you can install GIMP with the DDS plugin.
Toronam Posted March 16, 2018 Posted March 16, 2018 You have paint.net if you want. you can open and save dds pictures immediatly. And he is more simple but a bit weaker than the others.
sas0066 Posted March 17, 2018 Posted March 17, 2018 I am playing (or played) with all modifications of stellaris introduced here... And I found one problem that (in my point of view) should be solved. As player I am enjoying content of all these mods but there is that one problem. Traits that are the same.... but they are not the same. To be more specific there are traits with that are souposed to represent same thing but have different trait cost, different pros and cons. It would be awesome if there would be some (i hate that word) normalisation. I had to say that, i hate it but i play your awesome mods anyways... Keep it going. Wish you good luck and no problems with brackets
sas0066 Posted March 17, 2018 Posted March 17, 2018 Right now I am using Make Space Sexy Again, Sexual Traits, Sexy Xenos.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now