Page 2 of 3

Posted: 24 Nov 2005, 17:02
by Tim Blokdijk
Yes I was thinking about some sort of "file" list but I don't know if it's practical?
Let's just see how Foe OfTheBee's todo list looks like once he made it.
In the mean time I'm bussy with the cursors.

Help!

Posted: 25 Nov 2005, 22:19
by FoeOfTheBee
The comander now builds, walks, and shoots. I removed the base plate, which looked funny. I need help with a couple of issues that have me stumped. The mod-in-progress is at http://blancandrin.dyndns.org/~foe/xect ... n_v03a.sd7

1. After removing the Xect Commander's base plate, I get an "unknow texture 00" message when starting a game.

2. Several units will not shoot. I have been working on the Kindjal Plasma Trooper, and I am stumped as to why he doesn't shoot. The same weapon shoots with other units. I'm posting the script below, hopefully someone can let me know what I need to do to fix this.

#define TA // This is a TA script

#include "sfxtype.h"
#include "exptype.h"

piece base, hip_joint, hip, rthigh_joint, rthigh, rleg_joint, rleg, rfoot_joint,
rfoot, lthigh_joint, lthigh, lleg_joint, lleg, lfoot_joint, lfoot, torso_joint,
collar, neck, chest, ribs, shoulders, launchers, rflare, lflare,
rarm_joint, rarm, rwrist_joint, rwrist, rhand_joint, rhand, larm_joint, larm,
lwrist_joint, lwrist, lhand_joint, lhand, pack, tubes, bothead, tophead,
visor, head_joint;

static-var bMoving, bAiming, Static_Var_3, gun_1, Static_Var_5,
Static_Var_6;

// Signal definitions
#define SIG_AIM 4

walk(Func_Var_1)
{
if( bMoving == 1 )
{
turn hip_joint to y-axis <15.> speed <145.>;
turn lthigh_joint to x-axis <-35.> speed <145.>;
turn lleg_joint to x-axis <-25.> speed <145.>;
turn lfoot_joint to x-axis <-15.> speed <145.>;
turn rthigh_joint to x-axis <35.> speed <145.>;
turn rleg_joint to x-axis <25.> speed <145.>;
turn rfoot_joint to x-axis <15.> speed <145.>;
wait-for-turn hip_joint around x-axis;
wait-for-turn lthigh_joint around x-axis;
wait-for-turn lleg_joint around x-axis;
wait-for-turn rthigh_joint around x-axis;
wait-for-turn rleg_joint around x-axis;
}
if( Func_Var_1 == 1 )
{
turn larm_joint to x-axis <-35.> speed <145.>;
turn lwrist_joint to x-axis <0.> speed <145.>;
turn rarm_joint to x-axis <35.> speed <145.>;
turn rwrist_joint to x-axis <-75.> speed <145.>;
}
if( bMoving == 1 )
{
turn hip_joint to y-axis <0.> speed <145.>;
turn lthigh_joint to x-axis <0.> speed <145.>;
turn lleg_joint to x-axis <0.> speed <145.>;
turn lfoot_joint to x-axis <0.> speed <145.>;
turn rthigh_joint to x-axis <0.> speed <145.>;
turn rleg_joint to x-axis <0.> speed <145.>;
turn rfoot_joint to x-axis <0.> speed <145.>;
}
if( bMoving == 1 )
{
turn hip_joint to y-axis <0.> speed <145.>;
turn lthigh_joint to x-axis <35.> speed <145.>;
turn lleg_joint to x-axis <25.> speed <145.>;
turn lfoot_joint to x-axis <15.> speed <145.>;
turn rthigh_joint to x-axis <-35.> speed <145.>;
turn rleg_joint to x-axis <-25.> speed <145.>;
turn rfoot_joint to x-axis <-15.> speed <145.>;
turn torso_joint to y-axis <10.> speed <25.>;
turn torso_joint to z-axis <-5.> speed <25.>;
turn torso_joint to x-axis <5.> speed <60.>;
turn hip_joint to z-axis <3.> speed <50.>;
wait-for-turn hip_joint around x-axis;
wait-for-turn lthigh_joint around x-axis;
wait-for-turn lleg_joint around x-axis;
wait-for-turn rthigh_joint around x-axis;
wait-for-turn rleg_joint around x-axis;
}
if( Func_Var_1 == 1 )
{
turn larm_joint to x-axis <35.> speed <145.>;
turn lwrist_joint to x-axis <-75.> speed <145.>;
turn rarm_joint to x-axis <-35.> speed <145.>;
turn rwrist_joint to x-axis <0.> speed <145.>;
}
if( bMoving == 1 )
{
turn torso_joint to x-axis <-5.> speed <25.>;
turn torso_joint to y-axis <-10.> speed <25.>;
turn torso_joint to z-axis <5.> speed <25.>;
turn hip_joint to z-axis <-3.> speed <50.>;
}
if( bMoving == 1 )
{
turn hip_joint to y-axis <0.> speed <145.>;
turn lthigh_joint to x-axis <0.> speed <145.>;
turn lleg_joint to x-axis <0.> speed <145.>;
turn lfoot_joint to x-axis <0.> speed <145.>;
turn rthigh_joint to x-axis <0.> speed <145.>;
turn rleg_joint to x-axis <0.> speed <145.>;
turn rfoot_joint to x-axis <0.> speed <145.>;
}
}

relax()
{
while( Static_Var_5 )
{
if( Static_Var_5 )
{
turn larm_joint to x-axis <75.> speed <15.>;
}
if( Static_Var_5 )
{
turn larm_joint to z-axis <0.> speed <15.>;
}
if( Static_Var_5 )
{
turn rarm_joint to x-axis <90.> speed <15.>;
}
if( Static_Var_5 )
{
turn rarm_joint to z-axis <0.> speed <15.>;
}
if( Static_Var_5 )
{
turn head_joint to y-axis <-35.> speed <30.>;
}
if( Static_Var_5 )
{
turn head_joint to x-axis <-45.> speed <30.>;
}
if( Static_Var_5 )
{
turn torso_joint to x-axis <-30.> speed <30.>;
}
if( Static_Var_5 )
{
wait-for-turn head_joint around y-axis;
}
if( Static_Var_5 )
{
turn torso_joint to y-axis <-35.> speed <15.>;
}
if( Static_Var_5 )
{
turn torso_joint to z-axis <-10.> speed <15.>;
}
if( Static_Var_5 )
{
turn lthigh_joint to x-axis <-10.> speed <15.>;
}
if( Static_Var_5 )
{
turn lthigh_joint to y-axis <10.> speed <15.>;
}
if( Static_Var_5 )
{
turn rthigh_joint to x-axis <0.> speed <15.>;
}
if( Static_Var_5 )
{
turn rthigh_joint to y-axis <-10.> speed <15.>;
}
if( Static_Var_5 )
{
turn lleg_joint to x-axis <10.> speed <15.>;
}
if( Static_Var_5 )
{
turn rleg_joint to x-axis <0.> speed <15.>;
}
if( Static_Var_5 )
{
wait-for-turn torso_joint around y-axis;
}
if( Static_Var_5 )
{
wait-for-turn larm_joint around x-axis;
}
if( Static_Var_5 )
{
wait-for-turn rarm_joint around x-axis;
}
if( Static_Var_5 )
{
turn head_joint to y-axis <35.> speed <30.>;
}
if( Static_Var_5 )
{
turn head_joint to x-axis <-45.> speed <30.>;
}
if( Static_Var_5 )
{
turn torso_joint to x-axis <-30.> speed <30.>;
}
if( Static_Var_5 )
{
wait-for-turn head_joint around y-axis;
}
if( Static_Var_5 )
{
turn torso_joint to z-axis <10.> speed <15.>;
}
if( Static_Var_5 )
{
turn lthigh_joint to x-axis <0.> speed <15.>;
}
if( Static_Var_5 )
{
turn lthigh_joint to y-axis <-10.> speed <15.>;
}
if( Static_Var_5 )
{
turn rthigh_joint to x-axis <-30.> speed <15.>;
}
if( Static_Var_5 )
{
turn rthigh_joint to y-axis <-10.> speed <15.>;
}
if( Static_Var_5 )
{
turn lleg_joint to x-axis <0.> speed <15.>;
}
if( Static_Var_5 )
{
turn rleg_joint to x-axis <10.> speed <15.>;
}
if( Static_Var_5 )
{
turn rarm_joint to x-axis <75.> speed <15.>;
}
if( Static_Var_5 )
{
wait-for-turn torso_joint around y-axis;
}
if( Static_Var_5 )
{
wait-for-turn larm_joint around x-axis;
}
if( Static_Var_5 )
{
wait-for-turn rarm_joint around x-axis;
}
}
}


MotionControl(moving, aiming, justmoved)
{
var Func_Var_4;
justmoved = TRUE;
Func_Var_4 = 0;
while( TRUE )
{
moving = bMoving;
aiming = bAiming;
if( moving )
{
if( aiming )
{
Static_Var_3 = 1;
Static_Var_5 = 0;
Func_Var_4 = 0;
}
if( !aiming )
{
Static_Var_3 = 0;
Static_Var_5 = 0;
Func_Var_4 = 1;
}
call-script walk(Func_Var_4);
justmoved = TRUE;
}
if( !moving )
{
Static_Var_3 = 1;
if( justmoved )
{
if( !aiming )
{
sleep 2000;
Static_Var_5 = 1;
start-script relax();
}
turn rthigh_joint to x-axis <0.> speed <200.>;
turn rleg_joint to x-axis <0.> speed <200.>;
turn rfoot_joint to x-axis <0.> speed <200.>;
turn lthigh_joint to x-axis <0.> speed <200.>;
turn lleg_joint to x-axis <0.> speed <200.>;
turn lfoot_joint to x-axis <0.> speed <200.>;
justmoved = FALSE;
}
sleep 200;
}
}
}


Create()
{
bMoving = FALSE;
bAiming = FALSE;
Static_Var_3 = 1;
Static_Var_5 = 1;
dont-shade base;
dont-shade hip;
dont-shade chest;
dont-shade ribs;
dont-shade collar;
dont-shade neck;
dont-shade bothead;
dont-shade tophead;
dont-shade visor;
dont-cache visor;
dont-shade pack;
dont-cache pack;
dont-shade tubes;
dont-shade launchers;
dont-shade shoulders;
dont-shade rarm;
dont-shade larm;
dont-shade rwrist;
dont-shade lwrist;
dont-shade rhand;
dont-shade lhand;
dont-shade rthigh;
dont-shade rleg;
dont-shade rfoot;
dont-shade lthigh;
dont-shade lleg;
dont-shade lfoot;
start-script MotionControl();
gun_1 = base;
}



StartMoving()
{
bMoving = TRUE;
}

StopMoving()
{
bMoving = FALSE;
}

SweetSpot(piecenum)
{
piecenum = base;
}

FirePrimary()
{
if( gun_1 == 0 )
{
turn torso_joint to y-axis <-35.> speed <310.>;
gun_1 = hip_joint;
sleep 20;
wait-for-turn torso_joint around y-axis;
turn torso_joint to z-axis <0.> speed <30.>;
return (0);
}
if( gun_1 == 1 )
{
turn torso_joint to y-axis <35.> speed <310.>;
gun_1 = base;
sleep 20;
wait-for-turn torso_joint around y-axis;
turn torso_joint to z-axis <0.> speed <30.>;
return (0);
}
}

AimFromPrimary(piecenum)
{
if( gun_1 == 0 )
{
piecenum = rflare;
}
if( gun_1 == 1 )
{
piecenum = lflare;
}
}

QueryPrimary(piecenum)
{
if( gun_1 == 0 )
{
piecenum = rflare;
}
if( gun_1 == 1 )
{
piecenum = lflare;
}
}

reset()
{
sleep 2000;
move hip_joint to y-axis [0.] speed [200.];
move torso_joint to y-axis [0.] speed [200.];
move hip_joint to z-axis [0.] speed [200.];
move torso_joint to z-axis [0.] speed [200.];
turn head_joint to z-axis <0.> speed <200.>;
turn hip_joint to z-axis <0.> speed <200.>;
turn torso_joint to z-axis <0.> speed <200.>;
turn rarm_joint to z-axis <0.> speed <200.>;
turn larm_joint to z-axis <0.> speed <200.>;
turn rwrist_joint to z-axis <0.> speed <200.>;
turn lwrist_joint to z-axis <0.> speed <200.>;
turn rhand_joint to z-axis <0.> speed <200.>;
turn lhand_joint to z-axis <0.> speed <200.>;
turn rthigh_joint to z-axis <0.> speed <200.>;
turn rleg_joint to z-axis <0.> speed <200.>;
turn rfoot_joint to z-axis <0.> speed <200.>;
turn lthigh_joint to z-axis <0.> speed <200.>;
turn lleg_joint to z-axis <0.> speed <200.>;
turn lfoot_joint to z-axis <0.> speed <200.>;
turn head_joint to y-axis <0.> speed <200.>;
turn hip_joint to y-axis <0.> speed <200.>;
turn torso_joint to y-axis <0.> speed <200.>;
turn rarm_joint to y-axis <0.> speed <200.>;
turn larm_joint to y-axis <0.> speed <200.>;
turn rwrist_joint to y-axis <0.> speed <200.>;
turn lwrist_joint to y-axis <0.> speed <200.>;
turn rhand_joint to y-axis <0.> speed <200.>;
turn lhand_joint to y-axis <0.> speed <200.>;
turn rthigh_joint to y-axis <0.> speed <200.>;
turn rleg_joint to y-axis <0.> speed <200.>;
turn rfoot_joint to y-axis <0.> speed <200.>;
turn lthigh_joint to y-axis <0.> speed <200.>;
turn lleg_joint to y-axis <0.> speed <200.>;
turn lfoot_joint to y-axis <0.> speed <200.>;
turn head_joint to x-axis <0.> speed <200.>;
turn hip_joint to x-axis <0.> speed <200.>;
turn torso_joint to x-axis <0.> speed <200.>;
turn rarm_joint to x-axis <0.> speed <200.>;
turn larm_joint to x-axis <0.> speed <200.>;
turn rwrist_joint to x-axis <0.> speed <200.>;
turn lwrist_joint to x-axis <0.> speed <200.>;
turn rhand_joint to x-axis <0.> speed <200.>;
turn lhand_joint to x-axis <0.> speed <200.>;
turn rthigh_joint to x-axis <0.> speed <200.>;
turn rleg_joint to x-axis <0.> speed <200.>;
turn rfoot_joint to x-axis <0.> speed <200.>;
turn lthigh_joint to x-axis <0.> speed <200.>;
turn lleg_joint to x-axis <0.> speed <200.>;
turn lfoot_joint to x-axis <0.> speed <200.>;
bAiming = FALSE;
Static_Var_5 = 1;
start-script relax();
}


AimPrimary(heading, pitch)
{
signal SIG_AIM;
set-signal-mask SIG_AIM;
bAiming = TRUE;
Static_Var_5 = 0;
while( !Static_Var_3 )
{
sleep 100;
}
Static_Var_6 = 0 - pitch;
turn torso_joint to y-axis heading speed <135.>;
turn torso_joint to x-axis Static_Var_6 speed <135.>;
turn head_joint to y-axis heading speed <185.>;
turn head_joint to x-axis Static_Var_6 speed <175.>;
wait-for-turn torso_joint around y-axis;
wait-for-turn torso_joint around x-axis;
sleep 2000;
start-script reset();
return (1);
}


Killed(severity, corpsetype)
{
if( severity <= 25 )
{
corpsetype = 1;
explode chest type BITMAPONLY | BITMAP1;
return (0);
}
if( severity <= 100 )
{
corpsetype = 2;
explode chest type BITMAPONLY | BITMAP1;
return (0);
}
if( severity <= 99 )
{
corpsetype = 3;
explode chest type BITMAPONLY | BITMAP1;
return (0);
}
corpsetype = 3;
explode chest type BITMAPONLY | BITMAP1;
return (0);
}

Posted: 25 Nov 2005, 23:05
by Archangel of Death
Ok. That was a fun variable tracking excercise, only to find that wasn't the problem. Remove the sleep 2000; from the bottum of AimPrimary(). Spring calls the script many times per second, so it is never getting to the end of the AimPrimary() and the return(1), which tells it that it can now fire.

I'd also like to encourage you to go throw and replace anywhere where a variable is made equal to a piecename with it's numerical equivalent (based on its position in the piece list). Junk like "gun_1 = base", its confusing and prone to problems if the piece list gets changed.

Posted: 28 Nov 2005, 23:02
by Tim Blokdijk
I'm making new cursors.
After playing around with some ideas I decided to start with some concept art before I invest a lot of time in 3D models and stuff.
Would like to have some feedback.
You can throw in your own concept art if you like.
Cursors are like a icon, they need to make clear what the action is you are going to preform.
Xect and Mynn need 10 cursor animations and one regular cursor.
Attack, Capture, Defend, Move, Patrol, Pick-up, Reclamate, Repair, Revive, Unload and the "normal" cursor.
Anyway, I made some examples

Attack:
Image
Capture:
Image
Defend:
Image

Posted: 29 Nov 2005, 17:17
by PauloMorfeo
Can the cursors have alpha, so we can have partially transparent parts?
I was thinking of the "Guard" cursor showing a shield glowing.

Posted: 29 Nov 2005, 18:12
by Tim Blokdijk
At thins moment it's not posible to have partially transparant parts afaik.
But it's won't be hard to put in a alpha layer once it's supported.

Shield glowing.. sounds like warcraft.
Can't really think of how a shield for Spring should look like.

Posted: 29 Nov 2005, 18:16
by PauloMorfeo
Tim Blokdijk wrote:...
Shield glowing.. sounds like warcraft.
Can't really think of how a shield for Spring should look like.
:shock: I mean like an energy shield around ... something. Not like a metal shield from the middle-ages.

The sequence of images of the cursor are strict, as in «must be 10 frames»? If so, how many? Or it can be as long as we want?

Posted: 29 Nov 2005, 18:36
by NOiZE
can we get some screens..

Posted: 29 Nov 2005, 19:12
by Min3mat
the defense one is really weird but i love the others, any chance of getting these in a custom vsn of xta

Posted: 29 Nov 2005, 20:51
by AF
I've contacted zenoclone about the problem with AI and he replies with somethign about either spring nto beign setup properly or soemthign todo with how Xect uses OTA textures and files in some places.

Missing data might be a reason, the AI crashes in a palce that yields no clues, and it seems ti creates exceptions when ti calls for a untidef. Perhaps sprign is missing somethign so ti doesnt laod correctly causing a cascade of instability. Youc ans ee this as in spring a untis dependencies arent checked till ti apepars on the map. eg using the latest version fo WD on fileunvierse I could fidn spring paused for a few secodns when buildign the dod unti that ahd a missing texture, then carried on whereas OTA would have crashed outright.

Posted: 29 Nov 2005, 21:05
by PauloMorfeo
http://taspring.clan-sy.com/phpbb/viewtopic.php?t=3034
I've made some concept art and i'm showing it there.

Posted: 30 Nov 2005, 03:56
by FoeOfTheBee
There are definitely some missing textures and I think some missing weapons. I'm getting married the day after tomorrow, so it might be a few weeks before I release the next version.

Posted: 30 Nov 2005, 19:24
by Tim Blokdijk
Congratulations! :o
I don't think anybody is in a hurry.

Chris Han is ok with moving Xect and Mynn to the svn.
I think that we could move to the svn once things like the missing textures/weapons problems are fixed?
And the few copyright problems are dealt with to.
What do you think?

Posted: 30 Nov 2005, 20:36
by AF
I found the problem in NTAI that amde ti crash udner Xect and Mynn and i think I've fixed ti btu havent tested ti out. Cains metal class crashes on load and as a result th agents that make NTAI run never start. Thus when theyg et called an exception occurs and no work is done.

Posted: 30 Nov 2005, 21:56
by PauloMorfeo
Foe OfTheBee wrote:... I'm getting married the day after tomorrow, ...
Good luck :P and congratulations.

Posted: 15 Dec 2005, 22:13
by xenoclone
Hey guys,

I know that for every sound/texture in the Mynn, I made sure it was all either original or royalty free to use. As for the Xect-- I honestly can't remember. I know under Fair Use you can get away with using short clips of sounds. When you buy SFX discs, for example, you can tell some sounds have been clipped out of TV shows. Now, I know early on I actually used "gag" sounds in the Xect... like the Intel chime. Those sort of things are protected and, in theory, I removed those. But it's been a while. The Xect also points to some OTA sounds, wreckage textures, and weapon models. Since they're not included in the download, there's no legal problem AFAIK, but it would cause the Spring to crash if you didn't have the OTA files installed. You'd probably have to repoint those textures/weapons/etc to some Mynn files that are similar (and there should be).

Anyway, I hope this is useful. I wish I still had time to work on either of them.

Posted: 15 Dec 2005, 22:16
by Caydr
Tim Blokdijk wrote:I'm making new cursors.
After playing around with some ideas I decided to start with some concept art before I invest a lot of time in 3D models and stuff.
Would like to have some feedback.
You can throw in your own concept art if you like.
Cursors are like a icon, they need to make clear what the action is you are going to preform.
Xect and Mynn need 10 cursor animations and one regular cursor.
Attack, Capture, Defend, Move, Patrol, Pick-up, Reclamate, Repair, Revive, Unload and the "normal" cursor.
Anyway, I made some examples

Attack:
Image
Capture:
Image
Defend:
Image
Triforce anyone?

Posted: 15 Dec 2005, 22:19
by AF
I did an NTAI test yesterday and NTAI didnt laod at all btu I played anyways and found that the 2 races togetehr use too many textures for a 3d0 model mod. Wreckages ahd the telltale collage of mini textures on them

A number of Xect aircraft didnt fire either, and xect units have a dark purplish square udnerneath them that shows and messes it up visually. The same with the xect bomber.

Posted: 15 Dec 2005, 22:23
by xenoclone
Hmmm.... I know that for the aircraft, I sometimes did a "shadow plate" to make it so there were shadows for them. For whatever reason, I tried be super-efficient in poly-count for them.

If you guys want, I can email the original LWO files to you for any "new" units in the Xect (some were old units refurbished, so to speak), as well as any textures (since I made them all except the Xect wreckage).

I have a little bit of spare time between now and early January. So I can give whatever help you need in that time.

Posted: 16 Dec 2005, 01:06
by Tim Blokdijk
Nice to see you dropping by :-)
Xect & Mynn are going to be a fine mod for Spring.

Would like to have the LWO files, I don't expect to use them right away but it won't hurt to have them around.

Another question: is there a background story for Xect & Mynn?
I ask because Zoombie on the forum here might be interested in writing a background story for the Xect & Mynn.