Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Cyberion

#61
The
Terminator: 2031

by Nikolay "Cyberion" Ivliev




Game's Website - http://www.terminator2031.tk/

or you may use the direct link (if you hate dot.tk popups or do not have popup blocker) -
http://www.cyberionsystems.com/terminator2031/

Developer's note:
I would like to say hello to everyone, because probably not many of you heard about me. My name is Nikolay, but many people call me Cyberion. I was the modder for the Excelcia community (mod for Freelancer). Excelcia Forum. Currently we are developing the new modification. I'm also the 3D modeler, many of my works can be found on my website.
I would like to stress your attention to the fact that i'm not the native english speaker, so here and there you may find some grammar/spelling mistakes. Also according to that fact, the final version, well beta-version of the game will require some proof reading. I've began the development in english so everyone (well mostly everyone) in the world may understand what it's all about.

As you may see from the title, the game is based in Terminator Universe. 2031 is nothing else but the year. So the events of the game will take place during the war between SkyNet and Humans.
Tell me, have you ever played Bethesda's "Terminator: Future Shock"? If so and you liked it, than welcome to the same atmosphere. I tried to keep the feeling of this great game even despite the fact that it's quest and not 3D shooter. So far, everyone who have tested it, spoke about the atmosphere positively, so i guess i'm on the right way.
As I progress with the development i'll update this thread with some new stuff. Maybe some story details, maybe more screenshots (well i could post like 15 of them, but I do not want to give away all the fun), maybe animation sequences, we will see...


Screenshots:





The story so far:
The year 2031. You are Chris Savage, the soldier of Resistance, the member of the "Grey Death" Task Force. You were hardened in combat with SkyNet's forces - Terminators. Your Resistence HQ is located in the suburbs of LA.
One day after the routine patrol, Colonel Burns, the head of your HQ, gathered your team in his office. The news was shoking. Terminators managed to infiltrate into LA's resistance HQ and destroyed it. Only few people were rescued. As they reported John Conner was unable to get through the terminator's blockade and had to hide in the seweres maze under the city.
Colonel Burns gives you the order to locate and save him. "Grey Death" group, consiting of you, Tom Gessert and your Captain Leon Sage, heads to LA's resistance HQ.


Characters:
Grey Death (GD) Group
Captain Leon Sage - GD group leader
Lieutenant Chris Savage - computer technician
Lieutenant Tom "Tommy" Gessert - pyrotechnic/medic

LA's suburbs HQ
Colonel Burns - head of HQ
Guard - guards Burns' office
Peter - supply room keeper

LA HQ
John Conner - the one ;)
Colonel Peters - leader of "Hounds" group. Special reconnaissance unit within LA HQ.

Others
well others are cencored, in order not to spoil the fun.


Locations:
LA's suburbs
LA city streets
LA Subway
LA sewers




Game Development Elements:
The game is developed using AGS engine (;)), Duke3D build engine, Paint Shop Pro 8.10, few Wolfenstein3D sprites, few Terminator: Future Shock sprites/textures and of course alot of custom made stuff ;)






This is all for now, i'll keep you informed about the progress. Stay tuned!

Cyb
#62
thx, it worked, but in the strange way.

What i mean is this:

when you have only 1 save game, it won't delete anything, and when you have several savegames and you select any of it, sometimes it deletes it, sometimes it deletes the savegame that is below.

For example:

savegames:

1
2
3
4

when i select to delete 3, it will delete it, so i have:

1
2
4

when i select 2 to delete, it deletes number 4...

any idea why?


P.S. do not forget to correct "int slot = ListBoxgetSelected (5,2);" into "int slot=ListBoxGetSelected (5,2);" ;)
#63
Can anyone help me with the script to overwrite/delete savegames.


I've created custom Save/Load GUI, but whenever i save my games it keeps saving it with the same names, i mean if i saved the game "save01", than i'm trying to save the game using the same name, it will write one more "save01" file. So i will have 2 Save01 files in my list box.

What i want is to Overwrite it. Whenever you type the same name, it will overwrite the old one.

And also i've created the delete button on my Gui in order to select teh save games and delete them.

i used

DeleteSaveSlot(savegameindex[index]);

in order to delete the selected file, but nothing seems to work. I've even tried to put "1" instead of savegameindex[index] in order to delete the first slot, but it doesn't work as well.
Do i need to write anything else into it? here is the code from the save gui without DeleteSaveSlot(savegameindex[index]);:


if (interface==5) { // if save interface
   
   if (button==3) {
   index=ListBoxGetNumItems(5,2); 
   if (index<20) {    
   GetTextBoxText(5,0,text);
   InterfaceOff(5);
   SaveGameSlot(index+1,text);
   SetDefaultCursor(); }

   else {
   index=ListBoxGetSelected(5,2);
   GetTextBoxText(5,0,text);
   InterfaceOff(5);
   SaveGameSlot(savegameindex[index],text);
   SetDefaultCursor(); }
}

if (button==1) {
InterfaceOff(5);
SetDefaultCursor();}

}



teh bottun numbe for the delete button is "4". So any help there?
#65
Well, as i'm very very bad at programming, i would ask your help guys.

I want to make the following thing:

whenever player uses any inventory item where he shouldn't it will say to him that he can't use it. Preferable 3-4 random phrases. But whenever the right item is used, it won't display the global message, but will perform the task that is given when this item is used, so can anyone help me with the code?

in other words, player uses the inventory items on a hotspot/object, but it says that it can't be used. Something like the phrase "it won't work". But when he uses the inventory item that is supposed to be used, everything goes as it was coded, without displaying this global message of course :)


I know in general how it can be done, through global variables i guess, but i do not have any idea of how to perform this :(
#66
General Discussion / Beslan, North Ossetia...
Sat 04/09/2004 23:21:25
http://news.bbc.co.uk/2/hi/europe/3624024.stm


So any thought about this disaster?


Personaly i would liek to give my best regard to those, whos relatives/children have died.
#67
well i'm downloading... so far looks nice, will post more after some time of playing ;)
#68
Ok it worked perfectly, i've made few additions and corrections, so now when you choose the item in inventory, than right click outside it, it closes, second right click *while you are holding the item) will deselect the item. here is the code:

Important: works perfectly  for the "popup modal" value.


// MOUSE BUTTONS

function on_mouse_click(int button) {
  // called when a mouse button is clicked. button is either LEFT or RIGHT
  if ((button == RIGHT) && (IsGUIOn(2) ==1)) { // GUI is on so do this
    GUIOff (2);
  }
  else if (IsGamePaused() == 1) {
    // Game is paused, so do nothing (ie. don't allow mouse click)
  }
  else if (button==LEFT) {
    ProcessClick(mouse.x, mouse.y, GetCursorMode());
  }
  else if (button == RIGHT) {
   
    if (character[GetPlayerCharacter()].activeinv >=0){    // if you are holding inv item, right-click, so deselect item
    character[GetPlayerCharacter()].activeinv = -1;
    SetCursorMode (MODE_USE); // will turn the use  mode after you deselected the item, you may use any mode of course
   }
    else show_inventory_window(); // will turn on the inventoy window, whenever you right click
  }
}

// MOUSE BUTTONS END
#69
yes, that's what i've tried for the first time. But i need to make it, so whenever i click right mouse button, my inventory popup and whenever i click right moue button while my inventory is turned on, it would turn off.

So far with the help of HotSpot i managed to make it pupup and go off on right mouse click. The problem is that it won't stay on the screen. I click right ouse button and it turns on and than immediately turns off  :-\
#70
hmm nope, the same thing, GUI goes off. I need to make it permanent on the screen til you click right buton again.

I've tried to do it through show_inventory function. Like it goes from default. So i had my inventory gui defined thre already. I mean custom inventory gui. so i used thos code in right mouse button:

if (IsGUIOn(2)==0) {
    show_inventory_window();
    }


but still Gui popups up only while i click :(
#71
*ya i've corrected it, when i found the parser error at &&*


heheh, well, now whenever i click right button, it popups only for 1 second, while i click the button, it doesn't stay on the screen. Do i need to put the pause command or anyhting?
#72
lol.. thx i'll give it a try ;)
#73
*fixed* lol


it tells me --> parser error at '&&'

Ehh any idea?

Now my mouse code looks like:

// MOUSE BUTTONS

  function on_mouse_click(int button) {
  // called when a mouse button is clicked. button is either LEFT or RIGHT
  if (IsGamePaused() == 1) {
    // Game is paused, so do nothing (ie. don't allow mouse click)
  }
  else if (button==LEFT) {
    ProcessClick(mouse.x, mouse.y, MODE_USE);
  }
 
else if (IsButtonDown(RIGHT) == 1) && IsGUIOn (2) == 1){
     GUIOff (2);
    }
  else GUIOn(2);
}

// MOUSE BUTTONS END



and i've put in rep_exe as you said:

if (IsGUIOn(2)==0) {
    GUIOn(2);
    }
----------------------------------------------------------------------------

[edit]: But i do not get it, why should i put anything into rep_execute?
#74
How would you make Gui to popup and close down on right mouse click?

I've used the following code, but it doesn't work, i mean my Gui popup, but i can't close it and also my default Cursor Mode switches to Look_Mode:

// MOUSE BUTTONS

  function on_mouse_click(int button) {
  // called when a mouse button is clicked. button is either LEFT or RIGHT
  if (IsGamePaused() == 1) {
    // Game is paused, so do nothing (ie. don't allow mouse click)
  }
  else if (button==LEFT) {
    ProcessClick(mouse.x, mouse.y, MODE_USE);
  }
  else if (button == RIGHT){
if (IsGUIOn(2)==1) {
    GUIOff(2);
    }
else ProcessClick(mouse.x, mouse.y, GUIOn(2));
CentreGUI(2);
   }
}

// MOUSE BUTTONS END



any help would be greatly apreciated?
#75
no, it doesn't work :(

Here is the full code of Global Script, used your scrip, but still nothing. Also i put the second object into inventory to test if items work, so i can use for example key on the poster inside the inventory and it will desplay me "Hello world". But when i select the key, click close and than trying to use it on the hotspot (where i defined of course "use inventory on hotspot") it does nothing, no message. Can you find what's wrong as i remember that i was editing invenory section. anyway here is my global Script:

// main global script file



// ------ keyboard control ------

#define DIR_DISTANCE     10000

#define DIR_DOWN_LEFT  1
#define DIR_DOWN       2
#define DIR_DOWN_RIGHT 3
#define DIR_LEFT       4
#define DIR_STOP       5
#define DIR_RIGHT      6
#define DIR_UP_LEFT    7
#define DIR_UP         8
#define DIR_UP_RIGHT   9

int PrevDirection;

function game_start() {
  // called when the game starts, before the first room is loaded
game.text_speed = 10;
DisableCursorMode(MODE_WALK);
SetMouseCursor(6);

  // ------ keyboard control ------
  PrevDirection = DIR_STOP;
}

function repeatedly_execute()
{
  // put anything you want to happen every game cycle here

  // --- keyboard control ---
  int CharId, Direction, dx, dy;

    // get new diretion
         if ((IsKeyPressed (371) > 0) || (IsKeyPressed (55) > 0)) Direction = DIR_UP_LEFT;    // 7 Home (numeric pad)
    else if ((IsKeyPressed (372) > 0) || (IsKeyPressed (56) > 0)) Direction = DIR_UP;         // 8 Up arrow
    else if ((IsKeyPressed (373) > 0) || (IsKeyPressed (57) > 0)) Direction = DIR_UP_RIGHT;   // 9 PgUp (numeric pad)
    else if ((IsKeyPressed (375) > 0) || (IsKeyPressed (52) > 0)) Direction = DIR_LEFT;       // 4 Left arrow
    else if ((IsKeyPressed (376) > 0) || (IsKeyPressed (53) > 0)) Direction = DIR_STOP;       // 5 Stop (numeric pad)
    else if ((IsKeyPressed (377) > 0) || (IsKeyPressed (54) > 0)) Direction = DIR_RIGHT;      // 6 Right arrow
    else if ((IsKeyPressed (379) > 0) || (IsKeyPressed (49) > 0)) Direction = DIR_DOWN_LEFT;  // 1 End (numeric pad)
    else if ((IsKeyPressed (380) > 0) || (IsKeyPressed (50) > 0)) Direction = DIR_DOWN;       // 2 Down arrow
    else if ((IsKeyPressed (381) > 0) || (IsKeyPressed (51) > 0)) Direction = DIR_DOWN_RIGHT; // 3 PgDn (numeric pad)
    else Direction = DIR_STOP;

    // compare new direction with previous direction
    if (PrevDirection != Direction)
    {
      PrevDirection = Direction;
      CharId = GetPlayerCharacter ();
      if (Direction == DIR_STOP)              { StopMoving (CharId);                    }  // 5 Stop (numeric pad)
      else
      {
             if (Direction == DIR_UP_LEFT)    { dx = -DIR_DISTANCE; dy = -DIR_DISTANCE; }  // 7 Home (numeric pad)
        else if (Direction == DIR_UP)         { dx = 0;             dy = -DIR_DISTANCE; }  // 8 Up arrow
        else if (Direction == DIR_UP_RIGHT)   { dx = DIR_DISTANCE;  dy = -DIR_DISTANCE; }  // 9 PgUp (numeric pad)
        else if (Direction == DIR_LEFT)       { dx = -DIR_DISTANCE; dy = 0;             }  // 4 Left arrow
        else if (Direction == DIR_RIGHT)      { dx = DIR_DISTANCE;  dy = 0;             }  // 6 Right arrow
        else if (Direction == DIR_DOWN_LEFT)  { dx = -DIR_DISTANCE; dy = DIR_DISTANCE;  }  // 1 End (numeric pad)
        else if (Direction == DIR_DOWN)       { dx = 0;             dy = DIR_DISTANCE;  }  // 2 Down arrow
        else if (Direction == DIR_DOWN_RIGHT) { dx = DIR_DISTANCE;  dy = DIR_DISTANCE;  }  // 3 PgDn (numeric pad)
        MoveCharacterStraight (CharId, character [CharId].x + dx, character [CharId].y + dy);
      }
    }
}

function show_inventory_window () {
  // This demonstrates both types of inventory window - the first part is how to
  // show the built-in inventory window, the second part uses the custom one.
  // Un-comment one section or the other below.
 
  /*
  // ** DEFAULT INVENTORY WINDOW
  InventoryScreen();
*/ 
  // ** CUSTOM INVENTORY WINDOW
  GUIOn (INVENTORY);
  CentreGUI (2);
  // switch to the Use cursor (to select items with)
  SetCursorMode (MODE_USE);
  SetMouseCursor (6);
}

function show_quit_window () {

GUIOn (QUIT);
CentreGUI (3);
}


function on_key_press(int keycode) {
  // called when a key is pressed. keycode holds the key's ASCII code
  if (IsGamePaused() == 1) keycode=0;  // game paused, so don't react to keypresses
  if (keycode==17)  show_quit_window ();   // Ctrl-Q
  if (keycode==363) SaveGameDialog();   // F5
  if (keycode==367) RestoreGameDialog();  // F9
  if (keycode==368) show_quit_window ();  // F10
  if (keycode==359) Display("The Eclipse, Copyright (c) 2004-2005 Nikolay Ivliev"); // F1

  if (keycode==362) RestartGame();  // F4
  if (keycode==434) SaveScreenShot("scrnshot.bmp");  // F12
  if (keycode==9)   show_inventory_window();  // Tab, show inventory

  if (keycode==19)  Debug(0,0);  // Ctrl-S, give all inventory
  if (keycode==22)  Debug(1,0);  // Ctrl-V, version
  if (keycode==1)   Debug(2,0);  // Ctrl-A, show walkable areas
  if (keycode==24)  Debug(3,0);  // Ctrl-X, teleport to room
}

function on_mouse_click(int button) {
  // called when a mouse button is clicked. button is either LEFT or RIGHT
  if (IsGamePaused() == 1) {
    // Game is paused, so do nothing (ie. don't allow mouse click)
  }
  else if (button==LEFT) {
    ProcessClick(mouse.x, mouse.y, MODE_USE);
  }
  else if (button == RIGHT){
if (character[VOICE].activeinv >=0){    // right-click, so cycle cursor
    character[VOICE].activeinv = -1;
}
else ProcessClick(mouse.x, mouse.y, MODE_LOOK);
   }
}

function interface_click(int interface, int button) {
  if (interface == ICONBAR) {
    if (button == 0) {  // show inventory
      show_inventory_window();
    }
    else if (button == 1)    // save game
      SaveGameDialog();
    else if (button == 2)   // load game
      RestoreGameDialog();
    else if (button == 3)   // quit
      show_quit_window ();
    else if (button == 7)    // about
      Display("Eclipse: Burning Universe, Copyright (c) 2003-2004 Inner Vault");

}  // end if interface ICONBAR

  if (interface == INVENTORY) {
    // They clicked a button on the Inventory GUI

    if (button == 1) {
      // They pressed the OK button, close the GUI
      GUIOff (INVENTORY);
    }
 
      if ((button == 4) && (game.top_inv_item < game.num_inv_items - game.num_inv_displayed)) {
      // scroll down
      game.top_inv_item = game.top_inv_item + game.items_per_line;
    }
    if ((button == 5) && (game.top_inv_item > 0)){
      // scroll up
      game.top_inv_item = game.top_inv_item - game.items_per_line;
    }
  }
 
 
 
   if (interface == QUIT) {
    // They clicked a button on the quit GUI
   
    if (button == 0) {
    QuitGame (0);
    }
    if (button == 1) {
      // They pressed the OK button, close the GUI
      GUIOff (QUIT);
      SetMouseCursor (6);
    }
  }
}

function inventory1_a() {
  // script for inventory1: Look at inventory item
Display ("Well, this is just a key."); 
}

function inventory2_a() {
  // script for inventory2: Use inventory on this item
Display("Hello world"); 
}
#76
I do not know I can't make it work, i made everything i could (i really suck at scripting as i do not know anything about C++ or any other language, so for me it's a real pain in the A**.


Here is my code:

function on_mouse_click(int button) {
  // called when a mouse button is clicked. button is either LEFT or RIGHT
  if (IsGamePaused() == 1) {
    // Game is paused, so do nothing (ie. don't allow mouse click)
  }
  else if (button==LEFT) {
    ProcessClick(mouse.x, mouse.y, MODE_USE);
  }
  else if (character[VOICE].activeinv >=0){    // right-click, so cycle cursor
character[VOICE].activeinv = -1;
    ProcessClick(mouse.x, mouse.y, MODE_LOOK);
   
   }
}


What's wrong? i bet there is something wrong.
#77
Hello,

currently i have a problem with my inventory items, i'll explain.

I'm using the controls where Player Char moves by using arrow keys and Interact with Left Mouse click and Loot at with right mouse click.

When i select item in inventory it becomes mouse cursor, but i can't switch it off. Remember in "The Dig", you select the item from inventory and you interact with the help of this item, but when you pressed right mouse button it returns you to your default interact mouse mode.  I wounder how i may do so? So far i select the item and it stays as my mouse cursor and i can't change it with right mouse click as it is in look mode. Where i need to write SetCursorMode or what ever line?
SMF spam blocked by CleanTalk