Megaquarium

Megaquarium

What will you create?
Access an ocean of content for Megaquarium created by players like you. New animals, decorations, tanks and more are available to expand your game and tailor it to your liking.
Learn More
Using the pre made objective information
So for my Architect's Collection custom campaign I want to try and be as vanilla as possible and for some reason when I try to use the pre made objective it wouldn't work it only work for the complete.text part so IDK whether I have to add something else other than adding it in the titleid and inserts if anyone could help would be appreciated.
Last edited by Triggered Cat; 9 Jan, 2022 @ 9:14pm
< >
Showing 1-4 of 4 comments
Twice Circled  [developer] 3 10 Jan, 2022 @ 4:38am 
I'm happy to take a look if you post the important bits of the file here - not the whole thing, just the bits to do with objectives. :)

Alternatively you could take it to the Discord channel where I'm sure another modder will be happy to offer more in-depth advice.
Last edited by Twice Circled; 10 Jan, 2022 @ 4:40am
Triggered Cat 52 10 Jan, 2022 @ 4:48am 
alright so here is the line I am using
"sectionId":"opt_needle",
"titleId":"specialist_display_2",
"inserts":["objPerson3","13_sea_needle"],

It for some reason only work for the complete message
Twice Circled  [developer] 3 11 Jan, 2022 @ 4:02am 
You also need a message which triggers the start of the objective.

For example in your 'main' section you could have:

"doOnStart":[
{"message":{
"id": "specialist_display_2",
"inserts": [
"objPerson3",
"13_sea_needle",
],
"uid": -18800, // Any unique number will do
"buttons": [
{
"doOnClick": [
{
"sideObjectiveStart": "opt_needle"
}
]
},
],
}
},
],

*Not tested YMMV

Or you could make a global trigger and use that to create the message. Just put it in a doOnTrigger instead of doOnStart.

Hope that gets you on the right track.

Extra info
=======

Here's how it works in general.

1. You define a "section" which is basically the objective itself (the thing in the window in the top right with the list of sub-objectives).

2. You choose a trigger for when you want the "section"/side objective to be offered. E.g. doOnStart or doOnTrigger.

3. You design a message (see above) which offers it to the player and put that in the doOnTrigger or doOnStart array. You can customise the text of the message by changing the "id" and then defining a set of strings in a strings file: id.title, id.text.0, id.reply.0 etc. The strings files for each of the base game campaign levels is a good source of inspiration.

4. The key bit of the message is the doOnClick ... sideObjectiveStart. This is what tells the button to start the side objective. The id here must match the section you defined earlier.
Triggered Cat 52 11 Jan, 2022 @ 5:12pm 
Originally posted by Twice Circled:
You also need a message which triggers the start of the objective.

For example in your 'main' section you could have:

"doOnStart":[
{"message":{
"id": "specialist_display_2",
"inserts": [
"objPerson3",
"13_sea_needle",
],
"uid": -18800, // Any unique number will do
"buttons": [
{
"doOnClick": [
{
"sideObjectiveStart": "opt_needle"
}
]
},
],
}
},
],

*Not tested YMMV

Or you could make a global trigger and use that to create the message. Just put it in a doOnTrigger instead of doOnStart.

Hope that gets you on the right track.

Extra info
=======

Here's how it works in general.

1. You define a "section" which is basically the objective itself (the thing in the window in the top right with the list of sub-objectives).

2. You choose a trigger for when you want the "section"/side objective to be offered. E.g. doOnStart or doOnTrigger.

3. You design a message (see above) which offers it to the player and put that in the doOnTrigger or doOnStart array. You can customise the text of the message by changing the "id" and then defining a set of strings in a strings file: id.title, id.text.0, id.reply.0 etc. The strings files for each of the base game campaign levels is a good source of inspiration.

4. The key bit of the message is the doOnClick ... sideObjectiveStart. This is what tells the button to start the side objective. The id here must match the section you defined earlier.
Thank you will try it today!
< >
Showing 1-4 of 4 comments
Per page: 1530 50