Go Back   The Construct Forums > Gaming > Construction Creations
User Name
Password


Reply
 
Thread Tools Search this Thread Display Modes
1 - 02-16-2008, 08:11 PM quote
Thyth
AKA Electricutioner
 
Join Date: Dec 2006
Posts: 479
Offline
Default Structural Infinity

You can can find a quick installer here.



I'm sure you've all read Linker's thread on the piece limit, and are aware that I was in the process of working on the script end.

I'll be using this post to provide a single place for up to date status information on the script. Krash has generously provided hosting for this script. If you wish to download the current version, it is available here.

The script download is (for the time being) an automatic updater which downloads the client and server scripts from The-Construct.net on launch. It can take up to a minute to perform this download.

Since I'll probably be making dozens of changes in the near future, I don't want to have everyone manually downloading new versions continually. Believe me, it's better this way.

Installation (Server):
-Download the VL2 from the link above. Put it somewhere in T2/GameData/Construction/.
-Launch a Construction dedicated server as before.

Installation (Client):
-Download the VL2 from the link above. Put it somewhere in T2/GameData/Construction/.
-Launch Tribes 2 as you would before.

If you are running the server, you must be running TribesNext RC3 or newer to get setGhostable functionality. The script will check for functions added in RC3, and if they are not available, you won't get slack space. SI will still work, but in a reduced mode.

Current Server Version: 0.7 Core (Beta)
Current Client Version: 0.9 Core (Beta)

Current Known Issues:
-Fading is not completely supported on virtual ghosts. Fade-in seems to work correctly, but fade-out simply jumps to full transparency when the fade completes.
-Cloaking is not supported at all on virtual ghosts. (Expect to fix by server 0.8)
-The server can spam massive quantities of notifications that result in perceived lag on the client side as further notifications get queued. (Expect to work on a first fix for server 0.9)

The usual: I'm not responsible if it crashes your game, blows up your computer, fries your video card, makes your girlfriend break up with you, or any other negative consequences.

Update History:
-Client 0.1-r2 posted (02/17/2008): Added cleanup when leaving servers. No more UE's when rejoining a server, or joining a different server.
-Client 0.1-r3 posted (03/31/2008): I still consider it alpha-quality. No changes were made to the server version of the script. This version has some slight differences in the way client side objects are stored (group rather than set), and an additional blob of code that properly kills client side duplicated ghosts.
-Server 0.2 posted (05/06/2008): Server has now reached "beta" quality. Slack space is allocated for non-deployable ghosts. Deployable objects will stop ghosting after 800 deployables, and this value is configurable in the script. Make sure to use the modified Tribes2_server.exe in conjunction with this version.
-Server 0.3 posted (07/10/2008): Working on some performance enhancements that require calibration (thus no real benefit yet to the 0.1 series clients). Fixed a few minor bugs. I'll need for servers to run this in real world situations before an enhanced client will be made available.
-Server 0.4 completed (7/26/2008): Working on packet conglomeration in an effort to improve loading rates for large buildings. Results are a bit less promising than initially anticipated since T2 does a lot of compression already, but I think I can still get close to the double data rates with a bit more work. If packeting doesn't pan out, I'll remove it.
-Client 0.5 completed (8/20/2008): Working on a first generation spatial partitioning system and some things that manage the out of order notification reception.
-Client 0.6 completed (8/22/2008): Reworked the spatial partitioning system to use spatial hashing. This reduces object object lookup by transform/scale/datablock to essentially constant time, rather than the quadratic time complexity in the pre-0.4 clients. Out of order notification handling is in, and allows objects to be arbitrarily ghosted and virtual-ghosted after creation; this will be used in the SI server to implement support for cloaking.
-Server 0.5 completed (8/26/2008): Packeting didn't help transfer rate performance. Removed it in favor of Huffman code length minimization, which provides roughly 30% improvement in transfer rate performance. Fixed a few bugs with on-create notification not propagating cloak state, fade state, or tag state. Added support for duplicate "protection", which allows marking objects on the client side for duplication tolerance; some mod functions require having two different objects in one place -- this allows specifying those situations for loose enforcement of duplication removal.
-Client 0.7 completed (8/26/2008): Added client side support for Huffman code length minimization for improved transfer rate performance. Added support for duplicate protection in the spatial hashing code. Fixed a few minor bugs with state handling of cloaking with regards to the spatial hashing code.
-Server 0.6 Core posted (9/17/2008): Completed catch support for tag changes on the server side. Killing support for all client script versions older than 0.7 (the first beta release) -- users of these clients will be notified that their script is too old, and that they should upgrade.
-Client 0.8 Core posted (9/17/2008): Completed client side processing of tag labels. This requires a raycast patched client which will be posted soon. Fixed a bug regarding texture swapping and duplicate removal. Implemented isClientGhost in script for all relevant object types, and changed its method of functioning. Later DLL clients can now be used without generating duplicate objects. Forcefields are also not duplicated anymore.
-Client 0.8b Core Posted (3/27/2009): No new features. Added support for RC2 TribesNext clients.
-Client 0.9 and Server 0.7 posted (5/31/2010): Added a new filtered remote method invocation, which is used to implement animations and damage notifications for SI pieces. Added a new health bar HUD that very closely emulates the one the game draws for non-SI pieces (you shouldn't be able to tell the difference). Both the server and the client must be running the latest versions to get these notifications. This update should make it much easier to deal with complex power based buildings, as both switches and generators animate.
Attached Images
 


Last edited by Thyth : 05-30-2010 at 10:26 PM. Reason: New client and server completed
 
2 - 02-16-2008, 08:52 PM quote
Krash
Neptune Sleeps
 
Krash's Avatar
 
Join Date: Nov 2006
Posts: 1,356
Offline

Here are a few shots of some ships we cloned. About 3227 pieces... good fun.
Attached Thumbnails
Click image for larger version

Name:  Halsshot1131.png
Views: 986
Size:  74.8 KB  Click image for larger version

Name:  Halsshot1130.png
Views: 906
Size:  118.2 KB  Click image for larger version

Name:  Halsshot1129.png
Views: 770
Size:  115.7 KB  Click image for larger version

Name:  Halsshot1128.png
Views: 812
Size:  126.8 KB  

Click image for larger version

Name:  Halsshot1126.png
Views: 1019
Size:  176.0 KB  

 
3 - 02-16-2008, 09:03 PM quote
Arcalyth
The Apocalyth
 
Arcalyth's Avatar
 
Join Date: Sep 2007
Posts: 5
Offline

Another issue, which I'm not sure is related to Wine or your script, but when I activate the vl2, I can only run the client for a few seconds before it freezes completely and I must kill it from the terminal. Without the vl2, Linker's modified client works fine. I'm guessing this has something to do with the autoupdater, or maybe Wine is just failing. I dunno.

Edit: Using just the client.cs without the vl2 works.

Last edited by Arcalyth : 02-16-2008 at 09:18 PM.
 
4 - 02-16-2008, 09:35 PM quote
EmperorsChamp
Alviss - All-wise
 
EmperorsChamp's Avatar
 
Join Date: Jan 2007
Location: homeless
Posts: 1,386
Offline

I <3 those ships

"Carry my will as a torch. With it, destroy the shadows."
 
5 - 02-17-2008, 06:05 AM quote
Eolk
Angry Old Man
 
Join Date: Nov 2007
Location: In an old, scary house
Posts: 2,959
Offline

Lol, it says "Shoo! Get out of here!"

Said Eolk, not Eehk.
 
6 - 03-31-2008, 06:26 AM quote
Eolk
Angry Old Man
 
Join Date: Nov 2007
Location: In an old, scary house
Posts: 2,959
Offline

The server has a sytax error.

Said Eolk, not Eehk.
 
7 - 03-31-2008, 09:34 AM quote
Thyth
AKA Electricutioner
 
Join Date: Dec 2006
Posts: 479
Offline

That's because those files have additional metadata for the auto-update script. You aren't supposed to download them directly -- but if you do, I expect you are smart enough to see and remove the metadata.

Edit:

After the main issues are addressed, I am considering a group move/rotate "accelerator" system. It would be both a server and client side script that could issue multi-object move commands to move any number of pieces as "one" command. The client side would be able to interpolate intermediate values for the transformation, thus allow moving large groups of objects as smoothly as the client frame rate.


Last edited by Thyth : 05-06-2008 at 06:45 PM. Reason: Moved version information to first post.
 
8 - 03-31-2008, 10:40 AM quote
Eolk
Angry Old Man
 
Join Date: Nov 2007
Location: In an old, scary house
Posts: 2,959
Offline

I did not download it directly, I used the auto-updater.

Said Eolk, not Eehk.
 
9 - 03-31-2008, 11:11 AM quote
Cornucopia
That One Guy
Divine Order of the Hammer
 
Cornucopia's Avatar
 
Join Date: Dec 2006
Location: Krash's Basement
Posts: 970
Offline

Quote:
Originally Posted by Krash
Here are a few shots of some ships we cloned. About 3227 pieces... good fun.



Those are great ships!

Creators = You and Shane?

----------------------------------------------------------------------
 
10 - 04-03-2008, 01:09 PM quote
Krash
Neptune Sleeps
 
Krash's Avatar
 
Join Date: Nov 2006
Posts: 1,356
Offline

Seems I had it set to limit it to only allow you to edit you posts within 2 days. Should be set to allow you to edit it indefinitely now.

Yeah, Shane did the big ship, I did the cargo hauler.
 
11 - 04-03-2008, 02:31 PM quote
Eolk
Angry Old Man
 
Join Date: Nov 2007
Location: In an old, scary house
Posts: 2,959
Offline

I like that little emblem, Thyth/Krash.

Said Eolk, not Eehk.
 
12 - 05-06-2008, 06:45 PM quote
Thyth
AKA Electricutioner
 
Join Date: Dec 2006
Posts: 479
Offline

Server side script/executable has been updated. See the first post for details.

 
13 - 05-07-2008, 12:27 PM quote
Krash
Neptune Sleeps
 
Krash's Avatar
 
Join Date: Nov 2006
Posts: 1,356
Offline

Tried out the new server executable myself last night, works nicely.

 
14 - 05-07-2008, 02:35 PM quote
Eolk
Angry Old Man
 
Join Date: Nov 2007
Location: In an old, scary house
Posts: 2,959
Offline

That's a good sign. Is there any way we can help contribute to the development of this?

Said Eolk, not Eehk.
 
15 - 05-07-2008, 03:27 PM quote
Thyth
AKA Electricutioner
 
Join Date: Dec 2006
Posts: 479
Offline

Yes. Write a fast system for the client side for ghost duplicate detection. Ideally, one that can detect duplicates without massive lagspikes. Keep in mind that ghosts are not necessarily transmitted at the same time as the object is created, or made visible to the client as the SI server notifications are, and even if they are... the ghost arrives after the virtual ghost.

I was thinking octree type spatial partitioning, but I'm open to... other suggestions.

Oh and... based on the new server, I've come up with a few ideas for a server side alteration that would fix cloaking and fading on the client side -- provided no more than say... 800 objects are cloaked or in the process of fading at once.

That would require a reliable, dynamic, ghost duplicate detector on the client side, prior to implementation, however.

If high performance data-structures are your forte, give a ghost duplicate detector a shot.

 
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
SI (Structural Infinity) Help/Info Mezalyth The Construct 26 12-17-2012 06:40 AM
Structural Infinity Blnukem General Discussion 2 05-05-2009 12:57 PM
Cannot get Structural Infinity to fully function. Ceskelmag Construction Help 1 07-19-2008 09:57 AM



All times are GMT -7. The time now is 05:26 AM.
Powered by: vBulletin Version 3.0.3
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.