Scripters cove
Moderators: winston, another_commander
Re: Scripters cove
I am currently thinking about the map visualization of the diverse alliances / antagonisms in my Diplomacy OXP.
To begin, I thought about drawing a line in red between two opposed systems, and a line in green between two allied systems; depending on the player knowledge, of course.
First, I would take any proposition of graphical improvement, over using lines, to represent alliances and oppositions.
Foremost (why should it always be the same thing?), is it possible to draw lines between systems on the full map? I only found the markSystem() functionality.
Barring that, I'll have to use system marks to signal alliances.
To begin, I thought about drawing a line in red between two opposed systems, and a line in green between two allied systems; depending on the player knowledge, of course.
First, I would take any proposition of graphical improvement, over using lines, to represent alliances and oppositions.
Foremost (why should it always be the same thing?), is it possible to draw lines between systems on the full map? I only found the markSystem() functionality.
Barring that, I'll have to use system marks to signal alliances.
Re: Scripters cove
I've found it!
Thanks to phkb and his galactic registry :p
Code: Select all
SystemInfo.setInterstellarProperty(galaxyNumber, dta[j], dta[k], 2, "link_color", this._regionColor);
- phkb
- Impressively Grand Sub-Admiral
- Posts: 4830
- Joined: Tue Jan 21, 2014 10:37 pm
- Location: Writing more OXPs, because the world needs more OXPs.
Re: Scripters cove
How does one work out the dimensions of a docking port? That is, the max width and height of the docking slit? Is the "boundingBox" property sufficient for this?
- Norby
- ---- E L I T E ----
- Posts: 2577
- Joined: Mon May 20, 2013 9:53 pm
- Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
- Contact:
Re: Scripters cove
In the case of the old dock model with brick shape, yes. I use only this in ILS because this is the only way that I found in js.
A more complex way would be if you open every dock models in wings3d to measure the inner sizes of the gates and make an array of dimensions based on the datakey of stations. Note there are non-rectangular inlets in Rock Hermits and Superhubs.
Somewhere we discussed that there is a validator in the core which put a message into the log when a too big NPC made an unsuccessful attempt to launch through a small dock. This part probably use a more accurate code for the size check.
- phkb
- Impressively Grand Sub-Admiral
- Posts: 4830
- Joined: Tue Jan 21, 2014 10:37 pm
- Location: Writing more OXPs, because the world needs more OXPs.
Re: Scripters cove
Ah, I thought that might have been the answer. I was just planning on updating some stats on the wiki and was hoping for an easy option.
Might be time for a quick hack'n'slash of the source code...
Might be time for a quick hack'n'slash of the source code...
- Norby
- ---- E L I T E ----
- Posts: 2577
- Joined: Mon May 20, 2013 9:53 pm
- Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
- Contact:
Re: Scripters cove
Here is my data table:
Dock sizes (W x H x L) in Oolite 1.77:
Main stations: 192.000 x 64.000 x 250.000
Rock-hermit: 138.001 x 138.001 x 250.120
From 1.79:
cori: 241.888 x 103.412 x 250.000
dodo: 210.362 x 81.027 x 250.000
ico: 238.546 x 82.108 x 273.278
rock: 194.688 x 108.567 x 253.500 (but only 64.8m height at full width)
Dock sizes (W x H x L) in Oolite 1.77:
Main stations: 192.000 x 64.000 x 250.000
Rock-hermit: 138.001 x 138.001 x 250.120
From 1.79:
cori: 241.888 x 103.412 x 250.000
dodo: 210.362 x 81.027 x 250.000
ico: 238.546 x 82.108 x 273.278
rock: 194.688 x 108.567 x 253.500 (but only 64.8m height at full width)
Re: Scripters cove
Okay, re: galactic jumps...
What's the earliest point in the galactic jump sequence that Oolite knows FOR SURE which system the player will arrive in?
Can I, for example, read
The idea here is to get the system ID before Oolite calculates prices and quantities...
And how exactly are prices calculated? It seems that
What's the earliest point in the galactic jump sequence that Oolite knows FOR SURE which system the player will arrive in?
Can I, for example, read
player.ship.targetSystem
in playerEnteredNewGalaxy
?The idea here is to get the system ID before Oolite calculates prices and quantities...
And how exactly are prices calculated? It seems that
price_economic
and price_random
are working opposite sides of the street. I need to know what the highest possible price [max_p] and the lowest possible price [min_p] for each commodity will be, and it's just not making any sense...- Cody
- Sharp Shooter Spam Assassin
- Posts: 16081
- Joined: Sat Jul 04, 2009 9:31 pm
- Location: The Lizard's Claw
- Contact:
Re: Scripters cove
I guess no-one knows, Phasted.
I would advise stilts for the quagmires, and camels for the snowy hills
And any survivors, their debts I will certainly pay. There's always a way!
And any survivors, their debts I will certainly pay. There's always a way!
-
- Quite Grand Sub-Admiral
- Posts: 6682
- Joined: Wed Feb 28, 2007 7:54 am
Re: Scripters cove
Here is a quick snippet from the log during a galactic jump:
As you can see, the system information is updated with the destination data when the18:44:21.794 [test]: shipWillEnterWitchSpace [G:0 S:206]
18:44:21.893 [test]: playerWillEnterWitchspace [G:0 S:206]
18:44:27.902 [test]: playerEnteredNewGalaxy [G:1 S:118]
18:44:27.905 [test]: shipWillExitWitchspace [G:1 S:118]
18:44:31.126 [test]: shipExitedWitchspace [G:1 S:118]
playerEnteredNewGalaxy
event is executed.- Cody
- Sharp Shooter Spam Assassin
- Posts: 16081
- Joined: Sat Jul 04, 2009 9:31 pm
- Location: The Lizard's Claw
- Contact:
Re: Scripters cove
<chortles>
I would advise stilts for the quagmires, and camels for the snowy hills
And any survivors, their debts I will certainly pay. There's always a way!
And any survivors, their debts I will certainly pay. There's always a way!
Re: Scripters cove
I want to change the location and probability of Kyota stations provided by Wildships OXP.
I'm thinking I could wait until the OXP is loaded, then replace the script's systemWillPopulate() function with my own version. Knowing that the function refers to this, will it work?
I'm thinking I could wait until the OXP is loaded, then replace the script's systemWillPopulate() function with my own version. Knowing that the function refers to this, will it work?
- phkb
- Impressively Grand Sub-Admiral
- Posts: 4830
- Joined: Tue Jan 21, 2014 10:37 pm
- Location: Writing more OXPs, because the world needs more OXPs.
Re: Scripters cove
Yes, it will work. If you replace a function in another script, any reference to "this" will be in that script, not yours. (And apologies for the late reply!)Astrobe wrote:Knowing that the function refers to this, will it work?
- phkb
- Impressively Grand Sub-Admiral
- Posts: 4830
- Joined: Tue Jan 21, 2014 10:37 pm
- Location: Writing more OXPs, because the world needs more OXPs.
Re: Scripters cove
Before I go and do something rash (you know, like changing the source code ), is there any way to get the equipment key of the currently primed equipment item?
- Norby
- ---- E L I T E ----
- Posts: 2577
- Joined: Mon May 20, 2013 9:53 pm
- Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
- Contact:
Re: Scripters cove
I do not know any. The logical way would be two new event listeners in Equipment scripts, for example
this.primed
and this.unprimed
.Re: Scripters cove
No worries, I had other ideas to explore. Thanks for the answer.