Tutorial 3: Changing the X Universe (Lots of Graphics)

The place to discuss scripting and game modifications for X²: The Threat.

Moderators: Moderators for English X Forum, Scripting / Modding Moderators

Post Reply
User avatar
Reven
Posts: 1133
Joined: Thu, 10. Jul 03, 07:42
x4

Tutorial 3: Changing the X Universe (Lots of Graphics)

Post by Reven » Sat, 18. Sep 04, 06:37

Creationism Revisited - How to Change the X Universe

Introduction

At some point, we are all going to want to write a script that makes changes to the X Universe. The whole point of scripting is to give us the ability to shape the game in new and interesting ways. The script editor gives you almost unlimited power to create - new ships, bases, asteroids, planets, jump gates - the uses are endless.

This tutorial will cover some of the basics of creation within X². The format for this tutorial, however, is reversed. First we are going to go over a sample script, and then in the second half we will go over creation commands and discuss them one by one. The reason for this is that the actual creation of objects is relatively simple. The real work is in coming up with interesting ways to create new objects that makes the game more fun. There is more to creation than simply creating the object. You must actually do something with it. The sample script will hopefully spark some imagination, but also it covers some of the pitfalls that need to be avoided - not just in object creation and manipulation, but in any script.

For this reason, the reader is encouraged not to skip the explanation of the sample scripts. It is true that only about 10% of the scripts deals directly with creation, but other imporant items are covered in them.

Requirements
  • A copy of this tutorial's companion scripts.
  • If you use Mozilla to view .xml files rather than MS Internet Exploder, then check this thread on how to correct a bug in the script style sheet.
Introduction to the Sample Scripts

This tutorial's example is a set of scripts that creates asteroids. The sector Power Circle in Argon space has the exploded planet Shipfall. If you look in the sector, you will see the broken up remains of the planet. One current planetology theory for our own solar system suggests that the asteroid belt between the orbits of Mars and Jupiter is the remains of a destroyed planet. Thus, it's not a stretch of the imagination to think that there could be a lot of asteroids coming off of Shipfall in Power Circle.

So, we will go through the steps necesary to design an asteroid creation system. This will, then, be as much an explanation of the design process as it will be an explanation of how to create objects.

Scope of Operation

Before you write a script, you need to define exactly what you want it to do. In project management, you would call this the "Scope of Operation".

In simplest terms, what we want is to create asteroids that appear to be coming off the exploded planet of Shipfall. This entails creating the asteroid, and moving the asteroid in some direction from the planet, and then destroying the asteroid when it is at a range that no one would see it any more.

In reality, there would be planetary debris going out in many directions from the planet. However, since almost all ships that come into the sector will stay in the vicinity of the grid, it would be a waste of resources to have asteroids flying around where no one will see them. So, we will only deal with asteroids that come from the planet towards the sector's trading grid.

Additionally, the planet is about 3600 km from the grid. Very rarely will a player fly that far from the grid, so we can further optimize by creating the asteroid closer to the grid.

So, our scope of operation is this:
  • Create asteroids in the sector Power Circle.
  • Make asteroids appear to come from the exploded planet of Shipfall, though don't create them so far away from the grid that resources are wasted in moving them through space where no one will ever see them.
  • Make the asteroids move from the point of creation through the trading grid.
  • Terminate the asteroid once it is at a range where no one is likely to see it any more.
Design

To bring life to our project, we will need the script that actually performs the work outlined in the scope. However, we also need a way of making sure that script runs when it is supposed to. If you have read the other tutorials, then you know by now that this will entail using an init script.

Init Script Design

An init script is any script with a name that starts with "init.". This script is run by X² each time the game is started. An init script doesn't have any associated object. It is not run on a ship or station. Because of this, you have to be careful with them. In general, it is a very bad idea to write any sort of init script that is persistant. All running scripts are saved each time you save your game. Thus, if you write an init script that keeps running, then each time the game starts, a new instance will get started, but also previous instances in your saved games will also run. You can easily ruin your saved games this way. And because these scripts aren't running on any particular object, an init script that runs and doesn't terminate itself is very hard to stop and get rid of.

So, in order to be prudent, our init scrip design should call for creating an object to run the asteroid-creating script on. This makes it much easier to determine if our asteroid-creating script is already running when the init script runs. A good object to use to run scripts on is a navigation beacon. This is an object that is treated as a ship in X².

As mentioned in the scope, we want to optimize things by not making the asteroid travel the entire 3600 km from shipfall to the trade grid. A good place to create the beacon is just off the edge of the sector map when it is zoomed out, on a direct line from the center of the trade grid to shipfall. It turns out that these coordinates are -109794, 33662, 33976.

Here is how we could design the init script to handle this:
  1. Look close to the coordinates where we want to create a navigational beacon and see if one is there already.
  2. If a beacon is not there, create it.
  3. Run the asteroid-creating script on the beacon.
  4. Terminate.
Asteroid-Creating Script Design Consideations

The actual work of our system is done in this script. We want to make it interesting for the player, so we will want to do more than just create a single type of asteroid and plop it somewhere in the trade grid. There are many more aspects to consider. To see what those are, we can take a look at the statement to create an asteroid:

Code: Select all

$Asteroid =  create asteroid: type=<number from 0 to 7> addto=<sector> resource=<0,1, or 2> yield=<number> x=<x coord> y=<y coord> z=<z coord>
Things we can consider, then, are:
  • Type - This is the model used for the asteroid. There are 8 of them, numbered 0 to 7. There is, unfortunately, no real rhyme or reason to the numbering scheme. I group them into the following sizes: Small (3, 5, 7), Normal (0, 1), Large (2, 4), and HUGE (6). We will want to vary the sizes in the script to make things interesting.
  • Resource - This can be Ore (0), Silicon (1), or Nividium (2). This too should be varied, though we should make Ore slightly more prevalent, and Nividium very rare so as to match what we see in existing asteroids.
  • Yield - How much of the resource is in the asteroid. Can be pretty much any number, but in existing asteroids, yields above 60 are rare, and yields above 100 are extremely rare. We should match this as well. After all, someone might decide to chase our asteroids and blow them apart with mining lasers.
We also want to determine a trajectory for our asteroid. The easiest way to do this will be to pick a random point on the trade grid (a 60 km square) to have the asteroid pass through that point. That will give a random trajectory that will always pass the asteroid through the grid.

Since the source of the asteroid is much close than shipfall, this will also serve to vary the apparent source location of the asteroid, so it will appear to come from different points around shipfall, as shown:

[ external image ]
Illustration of how the apparant source of the asteroid
will vary as the point it crosses the trade grid varies.


With the source coordinates we have chosen, the range of locations that the asteroid will appear to come from is shown here:

[ external image ]
Asteroids aimed at the grid will appear
to come from within the marked area.


This is a little wider than the actual planet of shipfall, but well within a reasonable area where stray asteroids from an exploded planet could come from.


pcasteroid.daemon.xml

Rather than going through the design step by step for this script, we will now examine the actual code in the sample and break down what it does step-by-step.

The script is a little long to post in its entirety here, so copy the script into the X2 scripts folder and double-click it to view it so you can follow along.
  • Lines 1-13: We create and initialize a few arrays that hold the type numbers of differently sized asteroids. This makes picking a random asteroid of a certain general size easier later in the script.
  • Lines 15-20: Grab our beacon's sector and coordinates. Doing it this way makes the script deployable anywhere, not just in Power Circle.
  • Line 23: Cause the script to repeat forever. It will keep creating asteroids until either the beacon that runs the script is destroyed, or until it is manually terminated.
  • Line 25: Wait randomly from 10 seconds to 10 minutes between each asteroid. Keeps the player guessing when the next one will come. :)
  • Lines 28-30: Here we check to see if the player is located in the sector. If no one is around to enjoy our work, then we don't bother wasting CPU resources by creating and moving an asteroid that no one will ever see. Just immediately loop back to the random delay.
  • Lines 32-34: Pick a random spot on the trade grid where the asteroid will cross through.
  • Lines 36-40: Take the X, Y, and Z offset of the random spot from the beacon and then double it. This will be the spot we will destroy the asteroid at. This should be far enough away that no one will notice it go bye-bye (unless they are chasing it).
  • Lines 42-45: Pick the actual spot the asteroid will be created at, which is one percent of the way from the beacon to the end point. We can't create it right on top of the beacon, or else it would smash it and that would be the end of that (though this tutorial would be a lot shorter if we did it that way).
  • Lines 47-58: Here we choose what the resource in the asteroid will be. Pick a random number from 0 to 999. One asteroid in a thousand will be Nividium, 300 in a thousand (30%) will be silicon, and 70% ore. This is about the same distribution we see elsewhere.
  • Lines 60-72: We choose the yield of the asteroid here. An even distribution from 1 to 120 would create far too many high-yield asteroids, so we have three ranges that we select from randomly. We make 90% of the asteroids from 1 to 20 yield, 9% from 1 to 60, and 1% from 1 to 120. This should give us asteroids that mimic the yields we already see.
  • Lines 74-91: In order to try and add realism, we choose the size of the asteroid based on its yield. We divide the yields up into 4 categories and pick randomly from asteroids of the same size in each category. Since it makes sense that a larger asteroid would probably be slower, we pick the speed of the asteroid here too.
  • Line 94: We finally have determined all the random factors for this asteroid, so now we create it. See, the actual act of creating is a small fraction of what we need to write in order to do interesting things with what we create.
  • Lines 97-107: Since we cannot make asteroids move automatically, this loop is where we manually move the asteroid. Lines 99 and 100 are important - we want to check with each iteration that the asteroid still exists before we move it. Remember, we want players to mine these things, so they may chase down an asteroid and blow it to bits. If this happens, then stop trying to move it.
  • Lines 109-111: If the asteroid still exists after we've moved it as far as we're going to, then we blow it up ourselves. To add a touch of realism for anyone who has chased the asteroid this far, we actually destruct it with an explosion so it doesn't just dissappear.
Creation Command Reference

There are many different object types that can be created. They are lumped into eight general types: gates, stations, ships, asteroids, planets, nebulae, suns, and special (which are all sorts of interesting things).

Creating Gates
Gates must always be created in pairs. The general command to create a gate is:

Code: Select all

$Gate =  create gate: type=0 addto=[SECTOR] gateid=0 dstsecx=0 dstsecy=0 dstgateid=0 x=0 y=0 z=0
The 'type' for a gate is whether it is a North (0), South (1), West (2), or East (3) gate. Specify the integeger corresponding to the direction of the gate you want to create.

The 'addto' parameter is the sector to add it to.

The 'gateid' is a unique integer for each gate created. In general, leave the gateid the same as the type, unless you are going to have two gates going the same compass direction. The gateid is used to actually link the gates.

The parameters 'dstsecx' and 'dstsecy' are integers that specify the X and Y "coordinates" of the sector this gate drops you in.

Use 'dstgateid' to link this gate to the correct gate in the remote sector. This should be the gateid of the gate created in that sector.

Finally, x, y, and z are the coordinates of the location of the gate within the sector, specified in meters from the center.

Creating Stations and Ships
Ships and stations are both created the same way. The general form of the commands to create them are:

Code: Select all

$Station =  create station: type=$Type owner=Player addto=[SECTOR] x=0 y=0 z=0
$Ship =  create ship: type=$Type owner=Player addto=[SECTOR] x=0 y=0 z=0
The only thing you really need to specify is the type. The script editor has a handy method to look at all the ship types. When you edit this field, the bottom of the list of types that you can specify is "select (ship or station) type", which gives you a list and a picture of each one.

Creating Asteroids
As above mentioned, the general form for the command to create an asteroid is:

Code: Select all

$Asteroid =  create asteroid: type=0 addto=[SECTOR] resource=0 yield=0 x=0 y=0 z=0
Where 'type' is a number from 0 to 9 specifying the asteroid model to create, resource' is 0 for ore, 1 for silicon, or 2 for nividium and 'yield' is the yield of the asteroid produced.

Asteroid Types
Each of the asteroid types are shown below, next to a Teladi Albatross (TL) for size comparison. Click on an image for a full-size version:
[ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ]

Creating Planets
Simpler than asteroids - no resource or yield is needed:

Code: Select all

$Planet =  create planet: subtype=0 addto=[SECTOR] x=0 y=0 z=0
The 'subtype' parameter is a number from 0 to 16 indicating the planet model to use.

Planet Subtypes
Each of the planets shown below were created at a distance of 900km from the ship.

[ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ]

Creating Nebulae
Same as for planets:

Code: Select all

$Nebula =  create nebula: type=0 addto=[SECTOR] x=0 y=0 z=0
The 'type' parameter (I have no idea why some are 'type' and others are 'subtype' - perhaps there were both type and subtype parameters for some commands at one time in development) for nebulae is a number from 0 to 12.

Nebulae Types
Some nebulae have storms in them, others do not. Storms are those flashing areas in nebulae that, when you pass your ship through, eat your shields.

A list of which do and do not have storms follows, along with screenshots:
  • Type 0 - White gas, quite long, with storms.
  • Type 1 - Small red, no storms.
  • Type 2 - White gas, quite long, no storms.
  • Type 3 - Red, multiple areas, with storms.
  • Type 4 - Large white, no storms.
  • Type 5 - Blue and white, multiple aread, no storms.
  • Type 6 - White swirls, red area containing storms.
  • Type 7 - Huge purple, with storms.
  • Type 8 - Large white swirls and red, with storms.
  • Type 9 - Bright blue, long, no storms.
  • Type 10 - Large teal, with storms
  • Type 11 - Large teal, with storms
  • Type 12 - Small red, with storm
[ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ]

Creating Suns
As suns create light, you must specify the color of the ambient light they provide:

Code: Select all

$Sun =  create sun: subtype=0 r=1 g=1 b=1 addto=[SECTOR] x=0 y=0 z=0
WARNING: do not create a sun of subtype '23'. Attempting to do so will cause the game to crash to desktop immediately.

The r, g, and b parameters are to specify the amount of red, green, and blue ambient light provided by the sun. This is not specifying the color of the sun itself - just the light given off by it (so you can have a red sector, for example, like in Red Light).

Also note, that suns are unique, in that they are not 3d models. They appear to be sprites. They do not get smaller as you get further away from them - they are always a constant size.

Sun Subtypes
[ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ]

Creating Special Objects
The 'create special' statement is for creating a myriad of interesting and miscelaneous objects. Some are useful - some are mystifying. The general command to create them is:

Code: Select all

$Special =  create special: type=0 addto=[SECTOR] x=0 y=0 z=0
WARNING: do not create special object of type greater than or equal to '74'. Attempting to do so will cause the game to crash to desktop immediately.

Special Types
A list of all the special types that could be identified is below, along with screenshots. Some special types have voice identification. Those that do have what the voice ID is in quotes. Some are targetable as an object that appears on your gravidar. Those that are are listed as 'targetable'. A brief description (as best as can be given) is attached to each.
  • Type 0 - "Kessler Ring", targetable - Kessler ring
  • Type 1 - "Kessler Ring", targetable - Kessler ring
  • Type 2 - "Unknown Object", targetable - ship part (front of Xenon K)
  • Type 3 - "Asteroid", targetable - asteroid
  • Type 4 - "Asteroid", targetable - asteroid
  • Type 5 - "Unknown Object", targetable - Wall piece from XTension station construction animation.
  • Type 6 - "Unknown Object", targetable - Framing XTension station construction animation.
  • Type 7 - "Unknown Object", targetable - Wall piece from XTension station construction animation.
  • Type 8 - "Unknown Object", targetable - Piece from XTension station construction animation.
  • Type 9 - "Unknown Object", targetable - shipyard clamshell
  • Type 10 - "Unknown Object", targetable - plating
  • Type 11 - "Unknown Object", targetable - Sample sector map
  • Type 12 - "Unknown Object", targetable - post-like object
  • Type 13 - "Unknown Object", targetable - Engine housing?
  • Type 14 - "Unknown Object", targetable - Translucent debris
  • Type 15 - "Unknown Object", targetable - Astroid with a constructed tunnel
  • Type 16 - "Unknown Object", targetable - Gravidar (an actual working copy of your ship's gravidar)
  • Type 17 - "Unknown Object", targetable - Kessler ring
  • Type 18 - "Unknown Object", targetable - Kessler ring
  • Type 19 - "Unknown Object", targetable - Finish line?
  • Type 20 - Asteroid field
  • Type 21 - Asteroid field
  • Type 22 - Asteroid field
  • Type 23 - Asteroid field
  • Type 24 - "Nacelle", targetable - gate nacelle
  • Type 25 - "Nacelle", targetable - gate nacelle
  • Type 26 - "Nacelle", targetable - gate nacelle
  • Type 27 - "Gate", targetable - broken gate
  • Type 28 - Small asteroid
  • Type 29 - Unfinished or corrupted model - vertices improperly placed. Could be a window (similar to 45 perhaps)
  • Type 30 - "Ship debris", targetable - debris of Split Dragon (Dad's ship?)
  • Type 31 - Debris
  • Type 32 - Debris
  • Type 33 - Debris
  • Type 34 - "Navigational Beacon", targetable - Nav beacon
  • Type 35 - Khaak debris
  • Type 36 - Debris
  • Type 37 - "Unknown Object", targetable - Khaak debris
  • Type 38 - "Station Debris", targetable - ruined station
  • Type 39 - "Station Debris", targetable - ruined station
  • Type 40 - "Station Debris", targetable - ruined station
  • Type 41 - "Station Debris", targetable - ruined station
  • Type 42 - "Station Debris", targetable - ruined station
  • Type 43 - "Ship Debris", targetable - debris of Argon Titan. Note: creating this object caused my game to hang for close to 15 seconds while the model loaded.
  • Type 44 - Targetable - Cargo hatch with details on the other side (two pictures below)
  • Type 45 - Targetable - Window
  • Type 46 - Targetable - Nothing visible
  • Type 47 - Targetable - Internal tunnel
  • Type 48 - Targetable - Cargo hatch (as 44)
  • Type 49 - Targetable - Ring
  • Type 50 - Targetable - Tunnel
  • Type 51 - Targetable - 3d targeting reticle?
  • Type 52 - Targetable - Tunnel
  • Type 53 - Targetable - Cargo hatch (as 44)
  • Type 54 - Targetable - Nothing visible
  • Type 55 - Targetable - Tunnel
  • Type 56 - Targetable - Nothing visible
  • Type 57 - Targetable - Nothing visible
  • Type 58 - Targetable - Nothing visible
  • Type 59 - Targetable - Nothing visible
  • Type 60 - Targetable - Cargo hatch, same on both sides (unlike 44)
  • Type 61 - Targetable - Translucent purple sphere
  • Type 62 - Targetable - Nothing visible
  • Type 63 - Targetable - White 'cloudy' spot, planar
  • Type 64 - Targetable - Nothing visible
  • Type 65 - Targetable - Red nav beacon
  • Type 66 - Targetable - Cargo container?
  • Type 67 - Targetable - Nothing visible
  • Type 68 - Targetable - Nothing visible
  • Type 69 - Targetable - Cargo hatch (as 44)
  • Type 70 - Targetable - Nothing visible
  • Type 71 - Targetable - Nothing visible
  • Type 72 - Targetable - 3d targeting reticle? (as 51)
  • Type 73 - Targetable - Cargo hatch (as 44)
  • Type 74+ - Crashes to desktop.

[ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ] [ external image ]

Acknowledgements
Thanks goes to Earthpilot for identifying special object types 2, 5-8, and 51/72.
Last edited by Reven on Tue, 21. Sep 04, 12:30, edited 6 times in total.
You were warned... pirates will be hunted down like vermin.

Ex Turbo Modestum

User avatar
Reven
Posts: 1133
Joined: Thu, 10. Jul 03, 07:42
x4

Post by Reven » Sat, 18. Sep 04, 06:39

I should apologize for this taking so long. I've had the scripts and the first part done for months - just a huge burst of 'real life' hit before I had a chance to get the rest done.

Here it is, finally. Questions, comments, corrections, and critique are welcome.
You were warned... pirates will be hunted down like vermin.

Ex Turbo Modestum

User avatar
DeadlyDa
Posts: 1882
Joined: Mon, 5. Jan 04, 04:46
x4

Post by DeadlyDa » Sat, 18. Sep 04, 15:40

Excellant stuff...as usual! Your info clarifies a number of points.

I'm off to play a bit...and will let you know if I find any ssues.

SunFire
Posts: 782
Joined: Wed, 3. Dec 03, 07:07
x3tc

Post by SunFire » Sun, 19. Sep 04, 08:22

This deserves a Sticky !! :thumb_up:

User avatar
Eldorado
Posts: 291
Joined: Mon, 9. Feb 04, 18:10
x2

Post by Eldorado » Sun, 19. Sep 04, 15:40

Definitly! :thumb_up:
Eines ihrer Schiffe wird angegriffen...<<TRANTOR>>!!

User avatar
Earthpilot
Posts: 917
Joined: Sun, 23. Feb 03, 19:43
x3tc

Re: Tutorial 3: Changing the X Universe (Lots of Graphics)

Post by Earthpilot » Sun, 19. Sep 04, 20:00

Reven wrote:
  • Type 0 - "Kessler Ring", targetable - Kessler ring
  • Type 1 - "Kessler Ring", targetable - Kessler ring
  • Type 2 - "Unknown Object", targetable - ship part
  • Type 3 - "Asteroid", targetable - asteroid
  • Type 4 - "Asteroid", targetable - asteroid
  • Type 5 - "Unknown Object", targetable - box walls of some sort
  • Type 6 - "Unknown Object", targetable - framing for 5 and 7?
  • Type 7 - "Unknown Object", targetable - box walls of some sort
  • Type 8 - "Unknown Object", targetable - post-like object
  • Type 9 - "Unknown Object", targetable - shipyard clamshell
  • Type 10 - "Unknown Object", targetable - plating
  • Type 11 - "Unknown Object", targetable - Sample sector map
  • Type 12 - "Unknown Object", targetable - post-like object
  • Type 13 - "Unknown Object", targetable - Engine housing?
  • Type 14 - "Unknown Object", targetable - Translucent debris
  • Type 15 - "Unknown Object", targetable - Astroid with a constructed tunnel
  • Type 16 - "Unknown Object", targetable - Gravidar (an actual working copy of your ship's gravidar)
  • Type 17 - "Unknown Object", targetable - Kessler ring
  • Type 18 - "Unknown Object", targetable - Kessler ring
  • Type 19 - "Unknown Object", targetable - Finish line?
  • Type 20 - Asteroid field
  • Type 21 - Asteroid field
  • Type 22 - Asteroid field
  • Type 23 - Asteroid field
  • Type 24 - "Nacelle", targetable - gate nacelle
  • Type 25 - "Nacelle", targetable - gate nacelle
  • Type 26 - "Nacelle", targetable - gate nacelle
  • Type 27 - "Gate", targetable - broken gate
  • Type 28 - Small asteroid
  • Type 29 - Unfinished or corrupted model - vertices improperly placed. Could be a window (similar to 45 perhaps)
  • Type 30 - "Ship debris", targetable - debris of Split Dragon (Dad's ship?)
  • Type 31 - Debris
  • Type 32 - Debris
  • Type 33 - Debris
  • Type 34 - "Navigational Beacon", targetable - Nav beacon
  • Type 35 - Khaak debris
  • Type 36 - Debris
  • Type 37 - "Unknown Object", targetable - Khaak debris
  • Type 38 - "Station Debris", targetable - ruined station
  • Type 39 - "Station Debris", targetable - ruined station
  • Type 40 - "Station Debris", targetable - ruined station
  • Type 41 - "Station Debris", targetable - ruined station
  • Type 42 - "Station Debris", targetable - ruined station
  • Type 43 - "Ship Debris", targetable - debris of Argon Titan. Note: creating this object caused my game to hang for close to 15 seconds while the model loaded.
  • Type 44 - Targetable - Cargo hatch with details on the other side (two pictures below)
  • Type 45 - Targetable - Window
  • Type 46 - Targetable - Nothing visible
  • Type 47 - Targetable - Internal tunnel
  • Type 48 - Targetable - Cargo hatch (as 44)
  • Type 49 - Targetable - Ring
  • Type 50 - Targetable - Tunnel
  • Type 51 - Targetable - 3d targeting reticle?
  • Type 52 - Targetable - Tunnel
  • Type 53 - Targetable - Cargo hatch (as 44)
  • Type 54 - Targetable - Nothing visible
  • Type 55 - Targetable - Tunnel
  • Type 56 - Targetable - Nothing visible
  • Type 57 - Targetable - Nothing visible
  • Type 58 - Targetable - Nothing visible
  • Type 59 - Targetable - Nothing visible
  • Type 60 - Targetable - Cargo hatch, same on both sides (unlike 44)
  • Type 61 - Targetable - Translucent purple sphere
  • Type 62 - Targetable - Nothing visible
  • Type 63 - Targetable - White 'cloudy' spot, planar
  • Type 64 - Targetable - Nothing visible
  • Type 65 - Targetable - Red nav beacon
  • Type 66 - Targetable - Cargo container?
  • Type 67 - Targetable - Nothing visible
  • Type 68 - Targetable - Nothing visible
  • Type 69 - Targetable - Cargo hatch (as 44)
  • Type 70 - Targetable - Nothing visible
  • Type 71 - Targetable - Nothing visible
  • Type 72 - Targetable - 3d targeting reticle? (as 51)
  • Type 73 - Targetable - Cargo hatch (as 44)
  • Type 74+ - Crashes to desktop.
I know some of these:
2 is front section of Xenon K
5-8 are parts used in XTension construction animation
29 is not corrupt, it is part of a station interior (thier backsides are always transparent IMO)
51 is the "no body" cube. It means that there is no 3d-body present IMO
72 the same

User avatar
Reven
Posts: 1133
Joined: Thu, 10. Jul 03, 07:42
x4

Post by Reven » Mon, 20. Sep 04, 01:06

Thanks for the update. I'll alter the descriptions. 29 is corrupt or incomplete, though. It's not just the lack of a backface or the transparency. You have to create one and rotate the view around it to see what I mean. If you do, you'll see the vertices shift positions, twisting the model into all sorts of interesting shapes.
You were warned... pirates will be hunted down like vermin.

Ex Turbo Modestum

The_Abyss
Posts: 14933
Joined: Tue, 12. Nov 02, 00:26
x3

Post by The_Abyss » Mon, 20. Sep 04, 01:23

Awesome.

Absolutely fanstastic.

The only thing preventing a sticky is that nobody will read it.

We'll overcome this shortly however I think :wink:
Strung out on Britain's high, hitting an all time low

User avatar
Reven
Posts: 1133
Joined: Thu, 10. Jul 03, 07:42
x4

Post by Reven » Mon, 20. Sep 04, 22:19

Thanks, but it doesn't really need a sticky. Burianek's scripting resources thread is stickied and it references my tutorial thread which links to this tutorial.
You were warned... pirates will be hunted down like vermin.

Ex Turbo Modestum

carran
Posts: 820
Joined: Wed, 6. Nov 02, 20:31
x4

Post by carran » Tue, 21. Sep 04, 11:25

Excellent work!

The companion scripts link doesn't work however

User avatar
dPM_HeMan
Posts: 820
Joined: Mon, 16. Feb 04, 13:08
x3

Post by dPM_HeMan » Tue, 21. Sep 04, 12:13

this is great ! :thumb_up:

User avatar
Reven
Posts: 1133
Joined: Thu, 10. Jul 03, 07:42
x4

Post by Reven » Tue, 21. Sep 04, 12:34

carran wrote:Excellent work!

The companion scripts link doesn't work however
Thanks for letting me know - it's been fixed.
You were warned... pirates will be hunted down like vermin.

Ex Turbo Modestum

Xenon_Slayer
EGOSOFT
EGOSOFT
Posts: 13093
Joined: Sat, 9. Nov 02, 11:45
x4

Post by Xenon_Slayer » Tue, 21. Sep 04, 16:19

I was wondering when you would keep writing. I thought you had gone.
Come watch me on Twitch where I occasionally play several of the X games

jefferz95
Posts: 16
Joined: Thu, 22. Oct 09, 20:35

Post by jefferz95 » Sun, 14. Mar 10, 21:34

:lol: i did the gate one and now there are to gates crashed together

User avatar
Shadow dream
Posts: 1840
Joined: Thu, 1. Mar 07, 11:39
x3tc

Post by Shadow dream » Sun, 14. Mar 10, 22:57

don't disturb those who rest in peace
want to say: this old thread is nothing you should pick up again...

Shadow
Wahre Gentlemen behalten sogar umzingelt von Löwen ihren Leitsatz: Ladies first.
Wann lernt die Gesellschaft endlich, dass Geld erst die Probleme macht, die wir haben?
[ external image ]
Topic - Gallery - Forum - Freiheit

Post Reply

Return to “X²: The Threat - Scripts and Modding”