[Tools] Discussing tools. (Cliff? Help?)

Okay. I just want to check around the community (and especially CLIFF!) to see about whether or not some tools exist yet or not.

First up, AI scenario deployment flipper:

Scenarios are defined by text files, one of the important ones is a deployment file being used by the AI. What happens is the deployment file has the ships at the opposite side of the map and perfectly mirrored. For Gaxalon Beta Pirates, what I did was I temporarily extended the deployment area, deployed the fleets, and search/replaced all the angle attributes to make the fleet face the right way.

Now I KNOW there’s code knocking around somewhere in GSB to ‘flip’ a deployment, specifically for challenges. I would love it if this was made available to us, the most ‘ideal’ form of this would be to have an additional button on ‘Challenge!’ to save the deployment to disk and have it flipped for AI, or to take one of our saved AI deployments and make it available to us again. For scenario builders this is the absolute grail of ‘nice and easy’.

However! Since Cliff’s time is probably a little strained, if we can’t get ahold of this soon I think I may well be able to write a converter myself. (I know a little java, not much, and I have once or twice done things to parse text files.) As it stands, challenges export in .gsb format, which I don’t know how to edit. (They look funny in notepad and I’m not l33t enough to decode that.)

In the meanwhile, though, does anyone already have such a thing on the cards?

Detail what you want and how you want it and I’ll get to work developing a tool for it. I’m not much for making mods but I like to make the tools :slight_smile:

Hit me up on gmail chat or AIM if you wish to discuss.

gmail: matt.walker.jones@gmail.com
aim: viperscorpion34j

Would love to get in touch - you should have an e-mail/g-chat invite (I’m not so good with gmail chat)

I would love a hardpoint editor. Actually, if anyone has ANY info on hardpoints, please post it. The coordinates on the txt files dont seem to correspond to the pixel coordinates on the dds files, so its pretty difficult to get started on those.

If you make the coordinates 128/128, usually the hardpoint ends up in the middle. I’m assuming that’s pixels, but if not, then it’s probably a 256/256 sized grid.

Looks like you’re right. The ship textures are 512x512 but the coordinates are on a 256x256 grid. Now all we need is an explanation of the variables in [targets] and [hulls].

[targets] 0 = 129.00,42.00,0,1,115.00,31.00,143.00,53.00,(damage_sprite_sparks-129.00-42.00),(damage_sprite_sparks-128.00-42.00),(damage_sprite_sparks-133.00-44.00),

each entry is a place on the ship where it can be targeted and damaged. This is purely visual and has no gameplay merit.
the first 2 numbers are the position on the sprite, assuming a 256 x 256 pixel sprite (actual textures are larger).
the next 0 or 1 determines if there is a particle effect associated with that impact
the next 0 or 1 determines if there is a corresponding damage texture associated with it
if there is a damage texture, the next 4 values are the co-ordinates (assuming 256sq) of the four corners of the damage texture that is applied when this target gets hit.
if there is a particle effect, you might have something like SHIP_EMMITER_THIN next which defines what type it is
following this are an optional number of additional ‘permanent’ emitter effects that are basically the flickering sparks on the damage sprite, their particle name and location

[hulks] 0 = 163,1,382,181,(emit-259-87-hulk_emmiter),(emit-253-153-hulk_emmiter),(emit-251-135-hulk_smoke_emmiter),

these are the pieces the ship breaks into when it has turned into its hulk texture. This isnt available for all ships. This is mainly for frigates and cruisers
the first 4 are the locations of the hulk chunk from the main hulk texture assuming 512x512 size (yeah I know…). the rest are emmiters placed on that hulk using the same numbering scheme.

I had been wondering on how damage effects get patched in. Thanks for clearing that up, Cliff!

New tool to add to the list of wants - doodad to automagically do x/y coordinates for that stuff and save them to a text file. This one’s a bit beyond my comprehension - I’m guessing the quick and dirty way of doing it by hand is to load up the image in photoshop or GIMP and check the pixel coordinates for what you want by hand.

We so need a wiki for these information nuggets…

ta da:
gratuitousspacebattles.wikia.com … ttles_Wiki

Please don’t use it to promote your mod or fan fiction or whatever
And if you are posting modding tools please keep it as abstract as possible

O_o

  1. where from did you get the changelog? Or did you assemble the changes yourself?
  2. are we sure wikia will not delete all our info some day (maybe just because they have a bad day or something)?

Great hull editing info cliff, thanks. Managed to get a bunch of star trek hulls working. The problem is when you create a new race you cant select it from the race selection screen. All the other races are unlocked.

Here:
viewtopic.php?f=21&t=2506

And probably wont?

the code is run-time in gsb (to flip deployments) … challenges are saved as their deployed coordinates… however, here’s some trivial perl that should work.

[code]$file=$ARGV[0];
$xsize=$ARGV[1];

open X,$file;
while () {
if (/pos = ([0-9]+),([0-9]+)/) {
($x,$y)=($1,$2);
$x=$xsize-$x;
print “pos = “.$x.”,”.$y."\n";
} else {
if (/angle = 90/) {
print “angle = 270\n”;
} else {
print;
}
}
}
[/code]

To take that to the next level, a visual editor that would include all the slots, engine glows, targets, hulks, and other hull statistics would be very handy. I imagine something that would start with importing DDS files for preview (no more running the game just to get a white box) and then provide a drag and drop interface for all the other bits of a ship hull text file.

TAZ

@zircher

I plan on at least trying to do something of the sort over my winter break this year, but unfortunately I don’t yet have any way to display .dds files using Java. Of course one easy option is to simply require you to have a jpeg or png at 512x512 resolution, and the program can simply load it. I’ll do that if I’m unable to find a library with code for running .dds files. I will be writing the program in Java for two reasons. Everyone can use Java, and more importantly… its the only coding language I know enough of to actually write the program. Once I’ve started the actual coding I will start a thread to keep everyone updated. I believe I should be able to start sometime around December 1st since that will be about the latest I should finish up my current Stargate mod.

I am not much of a tool-making guy, I get by making mods however I can.

Coolness, let us know if you’ve had the time to make any progress on this. I wouldn’t break a sweat over the DDS preview. Anyone that can create a DDS file has the tools to make JPGs. (Albeit DDS previews would be helpful for finding alpha channel errors.)

TAZ

I’ll throw in what I’ve figured too:
[engineglows]
0 = 81,245,8,40,STANDARD
1 = 89,245,8,40,STANDARD

The first two number are the x and y co-ordinates. The next two numbers are the scaling in height and width. The final word is the engine glow to use.
in short:
id_number=x,y,height,width,texture_name

For me the difficult thing is placing the running lights.

A typical test invloves:
while not correct
modiffy the txt file
starting the game
selecting a battle.
checking the ships in game.
exiting.
done

This generally take about 100 itterations per ship…

A question on the audio .ogg files. Has anyone had any success in adding a different one for a new race?
As far as I can tell, only one .ogg file is ever played, and the race specific ones are not used (or is it just that I have a buggy version?)