Sign up Calendar Latest Topics
 
 
 


Reply
  Author   Comment  
Mike Substelny

Avatar / Picture

Administrator
Registered:
Posts: 2,390
Reply with quote  #1 
As reported elsewhere, we will be beta testing Artemis 2.7.5 at my place on January 25. See thread under Bridge Crew Comms if you want to be involved in the testing.

Improvements to scripting include:
  1. The "Player_slot" token should work for all script commands.
  2. The "Player_slot" token should not cause mysterious script crashes.
  3. The long awaited get_object_property function should be fully implemented, allowing object properties to be loaded directly into variables! [cool]
Darrin and I have been writing mission scripts that take advantage of these features. If the scripts work properly I intend to release another Armada V Training Mission after the party. That script will show the proper syntax to make this stuff work in your scripts. If the Artemis software itself is sufficiently stable I hope Thom will release it soon.

__________________
"The Admiralty had demanded six ships; the economists offered four; and we finally compromised on eight."
- Winston Churchill
DupeOfURL

Registered:
Posts: 288
Reply with quote  #2 
Mike - if I am following correctly, the "Player_slot" token is to deal with a position becoming nonfunctional.  Say Helm has a catastrophic failure.  When the server sees no token, it can free the helm position {to allow another player to cover}.  What if it is a fighter that fails?  I would hope the fighter would vanish for the map and be sitting in the hanger bay.  This more of a general play question than script specific, but I hope it is germane. 


__________________
on TeamSpeak as GrayBeard {the Grim}  ;-) 
on Twitter as   @GrayberdTheGrim 

Chief Engineer of the Fulminata, one of the Pirates Of BeechWood! 
Mike Substelny

Avatar / Picture

Administrator
Registered:
Posts: 2,390
Reply with quote  #3 
Quote:
Originally Posted by DupeOfURL
Mike - if I am following correctly, the "Player_slot" token is to deal with a position becoming nonfunctional.  Say Helm has a catastrophic failure.  When the server sees no token, it can free the helm position {to allow another player to cover}.  What if it is a fighter that fails?  I would hope the fighter would vanish for the map and be sitting in the hanger bay.  This more of a general play question than script specific, but I hope it is germane. 



The Player_slot token is used in mission scripts. It means that scripts which trigger events based on player actions do not need the player ship to be a certain name. Thus for many scripts you don't need to always name your ships Artemis, Intrepid, etc..

Of course if the script has audio or video communications where a character says "Ahoy, Artemis . . ." then there is nothing the Player_slot token can do about that.

__________________
"The Admiralty had demanded six ships; the economists offered four; and we finally compromised on eight."
- Winston Churchill
Darrin

Registered:
Posts: 142
Reply with quote  #4 
Quote:
Originally Posted by DupeOfURL
Mike - if I am following correctly, the "Player_slot" token is to deal with a position becoming nonfunctional.  Say Helm has a catastrophic failure.  When the server sees no token, it can free the helm position {to allow another player to cover}.  What if it is a fighter that fails?  I would hope the fighter would vanish for the map and be sitting in the hanger bay.  This more of a general play question than script specific, but I hope it is germane. 



The player_slot attribute is a separate issue. There are several script commands that require you to identify a specific object (usually set_object_property). Usually this is a named object so you can call it by the name="Artemis" or use_gm_selection="" attributes. Mike and I are writing the GM scripts for Armada V, but we can't really guess what the ship names will be or which ships will be deployed in the nine different sectors. And while use_gm_selection will work for one ship, it's difficult to implement sector-wide shenanigans with use_gm_selection. I have also written several non-GM scripts for a single ship that completely stop working if the players try to name the ship anything other than "Artemis". I can't predict which crew at Armada V will be given a particular side-mission. 

After watching our playtest crews play through some of our early drafts, it's also quite obvious that crews really, really, really love to rename their ships. Now that Thom has fixed the player_slot attribute for all commands, Mike and I can rework our Armada scripts to work with any ship name the players come up with, and we don't have to badger the crews into renaming their ships to "Intrepid", "Aegis", "Excalibur", etc. every time they want to move to a different sector. (It's also much easier to screw with every player ship in a sector now at the same time, since we don't care what the ship is named.)

Clients locking up or timing out was an issue where someone closed a laptop or the laptop went into sleep mode, which knocks that client out of the network, but Artemis still thinks the client is active and won't let anyone else be "Helm" until the laptop is woken up, reconnected, etc. Thom attempted to fix this, from the "changes.txt" file:

Quote:
Changed the theClientSim->idleTimer, and the theMainScreenDisplay->idleTimer to be slightly longer, to hopefully allieveiate the issue with clients jumping back to the console choice screen due to network lag.

I added a client-side heartbeat. This message helps the server figure out of a client has crashed or otherwise stopped, so it can forget it and let a new client connect and control helm, weapons, or science stations.



 

DupeOfURL

Registered:
Posts: 288
Reply with quote  #5 
As one of those Ship Renaming Rapscallions, I support this functionality.  Darrin,  on Saturday, when we had "issues" with your All Your Bases script in a renamed ship, was that a problem in v 2.7.5, or in the script?  I like to try different ships, I'm heartbroken we cannot take a Ximni {jump drive} dreadnaught into Mike's Inquisitor mission. 



__________________
on TeamSpeak as GrayBeard {the Grim}  ;-) 
on Twitter as   @GrayberdTheGrim 

Chief Engineer of the Fulminata, one of the Pirates Of BeechWood! 
Darrin

Registered:
Posts: 142
Reply with quote  #6 
Quote:
Originally Posted by DupeOfURL
As one of those Ship Renaming Rapscallions, I support this functionality.  Darrin,  on Saturday, when we had "issues" with your All Your Bases script in a renamed ship, was that a problem in v 2.7.5, or in the script? 


It's a scripting problem with Artemis 2.7.4. A lot of the commands that require a player object use name="Artemis" or use_gm_selection. 2.7.5 has fixed this, so you can now use player_slot=0 with all the commands. But 2.7.5 hasn't been officially released yet. 

I did consider updating the script on Sunday/Monday and sending Eastern Front a new version of All_Your_Base that would work with any ship name, but EF would have to be running 2.7.5.  

Quote:
Originally Posted by DupeOfURL

I like to try different ships, I'm heartbroken we cannot take a Ximni {jump drive} dreadnaught into Mike's Inquisitor mission.  


It's very easy to change that in the script, if you want to give it a try.

Change the create player line to:

<create type="player" player_slot="0" x="69055.0" y="0.0" z="35951.0" angle="165" name="Artemis" raceKeys="Ximni" hullKeys="Dreadnought" warp="no" jump="yes"/>




 
DupeOfURL

Registered:
Posts: 288
Reply with quote  #7 
Darrin - I appreciate the thought, but will wait an official v 2.7.5 release.  THEN I'll start nagging about an updated script.  ;-)   

So we COULD run, say a missile boat, BUT we'd need to  edit the script BEFORE starting the server?  Clavestone will be pleased! 



__________________
on TeamSpeak as GrayBeard {the Grim}  ;-) 
on Twitter as   @GrayberdTheGrim 

Chief Engineer of the Fulminata, one of the Pirates Of BeechWood! 
Mike Substelny

Avatar / Picture

Administrator
Registered:
Posts: 2,390
Reply with quote  #8 
The new training script I just posted won't work until you have Artemis 2.7.5x which should be Saturday night or soon thereafter. But if you want to see the syntax for the new commands (at least the ones I know of today) you can look at the script now.

Click here to download Artemis Armada V Training 3.

__________________
"The Admiralty had demanded six ships; the economists offered four; and we finally compromised on eight."
- Winston Churchill
Xavier Wise

Registered:
Posts: 1,089
Reply with quote  #9 
I am excited to get my hands on 2.7.5 and work on updating the sandbox. In the testing, is everything working as expected? It is going to be a significant amount of work to make all the changes, but means that the Sandbox is going to be so much more versatile.
__________________
Fleet Captain Xavier Wise - TSN Sabre
Link to TSN RP Community website
Mike Substelny

Avatar / Picture

Administrator
Registered:
Posts: 2,390
Reply with quote  #10 
Quote:
Originally Posted by Xavier Wise
I am excited to get my hands on 2.7.5 and work on updating the sandbox. In the testing, is everything working as expected? It is going to be a significant amount of work to make all the changes, but means that the Sandbox is going to be so much more versatile.


As noted above, everything is working, but the copy_object_property has a strange behavior that might be as much feature as bug. I think Thom is planning to change it to behave as the documention says before release, but maybe not. It's not too critical.

As far as I know, Thom is working this week to make AI ships behave more like players expect them to behave (i.e. fighting back against monsters). That will make a big difference at Armada, since we will often have sectors with multiple Comms officers looking for something to do. It won't really affect scripting, though.

__________________
"The Admiralty had demanded six ships; the economists offered four; and we finally compromised on eight."
- Winston Churchill
Previous Topic | Next Topic
Print
Reply

Quick Navigation:

Easily create a Forum Website with Website Toolbox.