Counterstrike Mod Thread:

The best and quickest support by a group of top-notch editing specialists, guaranteed!

Moderator: Forum Guards

Postby Allan » Fri Jun 21, 13 11:42 am

Well if you're willing to private-message me the CStrike package contents, I can gladly try and solve the Buy Menu issue for you. My current project is currently undergoing outside bug-testing, so I have a bit of free time on my hands.
User avatar
Allan
Alpha
 
Posts: 4545
Joined: Wed Dec 21, 05 1:41 pm
Location: Northamptonshire, England.

Postby bambi » Fri Jun 21, 13 1:26 pm

Ok, actually I'll just upload it. This is stolen from MapVote mod. So you'll see the similarities. Three classes, one .int, just turn the mutator on.

Code: Select all
class GunMenu extends MenuUIScreenWindow;

var localized string l_help1, l_cpoint, l_lgun;
var MenuUIScrollAreaWindow winScroll;
var MenuUIListWindow lstGuns, lstPoints;
var MenuUISmallLabelWindow CurrentPoints, LeadingGun;
var MenuLinkedList gunMenuLinkedList;
var float RepTime;
var bool bStacking, blstGunsDone;

event InitWindow()
{
local Window W;

Super.InitWindow();

if (actionButtons[2].btn != None)
   if ((Player == None) || (Player.PlayerReplicationInfo == None) || !Player.PlayerReplicationInfo.bAdmin)
      actionButtons[2].btn.SetSensitivity(false);

   winClient.SetBackground(Texture'DeusExUI.MaskTexture');
   winClient.SetBackgroundStyle(DSTY_Modulated);
   
   W = winClient.NewChild(Class'Window');
   W.SetSize(ClientWidth, ClientHeight);
   W.SetBackground(Texture'DeusExUI.MaskTexture');
   //W.SetBackground(Texture'UWindow.Background');
   W.SetBackgroundStyle(DSTY_Modulated);
   W.Lower();
   
   CreateLabel(8, 7, l_lgun);
   LeadingGun = CreateLabel(16, 20, "");
   LeadingGun.SetWidth(180);
   
   lstPoints = MenuUIListWindow(winClient.NewChild(Class'MenuUIListWindow'));
   lstPoints.SetPos(8, 40);
   lstPoints.SetSize(208, 192);
   lstPoints.SetSensitivity(false);
   lstPoints.EnableAutoExpandColumns(false);
   lstPoints.EnableAutoSort(true);
   lstPoints.SetNumColumns(2);
   lstPoints.SetColumnType(0, COLTYPE_Float, "%.0f");
   lstPoints.SetColumnType(1, COLTYPE_String);
   lstPoints.SetSortColumn(0, true, false);  //reverse order
   lstPoints.SetColumnWidth(0, 28);
   lstPoints.SetColumnWidth(1, 180);
   
   CreateLabel(236, 7, l_cpoint);
   CurrentPoints = CreateLabel(244, 20, "");
   CurrentPoints.SetWidth(180);
   
   winScroll = CreateScrollAreaWindow(winClient);
   winScroll.SetPos(236, 40);
   winScroll.SetSize(196, 192);
   
   lstGuns = MenuUIListWindow(winScroll.clipWindow.NewChild(Class'MenuUIListWindow'));
   lstGuns.EnableMultiSelect(false);
   lstGuns.EnableAutoExpandColumns(false);
   lstGuns.EnableAutoSort(false);
   lstGuns.SetNumColumns(2);
   lstGuns.SetColumnType(0, COLTYPE_String);
   lstGuns.SetColumnType(1, COLTYPE_String);
   lstGuns.SetSortColumn(0, false, false);  //case insensitive
   lstGuns.SetColumnWidth(0, 180);
   lstGuns.HideColumn(1);
   //lstGuns.DeleteAllRows();
   lstGuns.AddRow("AK47 $400");
   lstGuns.AddRow("XM1014 $200");
   lstGuns.AddRow("Knife $200");
   lstGuns.AddRow("Glock $100");
   lstGuns.AddRow("Steyr Scout $500");
   lstGuns.AddRow("Benelli M3 $200");
   lstGuns.AddRow("USP $400");
    bTickEnabled = true;
}

final function MenuUISmallLabelWindow CreateLabel(int X, int Y, string S)
{
   local MenuUISmallLabelWindow W;
   
   W = MenuUISmallLabelWindow(winClient.NewChild(Class'MenuUISmallLabelWindow'));
   W.SetPos(X, Y);
   W.SetText(S);
   W.SetWordWrap(false);
return W;
}

//do not change this cleanup code
event DestroyWindow()
{
   bTickEnabled = false;

   Player = DeusExPlayer(GetPlayerPawn());
   if ((Player != None) && !Player.bDeleteMe)
   {
      if (ViewPort(Player.Player) != None)
      {
         Player.ClientMessage(l_help1);
      }
   foreach Player.allactors(class'MenuLinkedList', gunMenuLinkedList)
      if (gunMenuLinkedList.Owner == Player)
         gunMenuLinkedList.gunMenu = None;
   }

   gunMenuLinkedList = None;
   Super.DestroyWindow();
}


//close window when death or end game screen displays
function bool CanPushScreen(class<DeusExBaseWindow> C)
{
if (ClassIsChildOf(C, class'HUDMultiplayer') || ClassIsChildOf(C, class'MultiplayerMessageWin'))
 {
 bStacking = true;
 return true;
 }

return Super.CanPushScreen(C);
}


function bool CanStack()
{
if (bStacking)
 {
 bStacking = false;
 return false;
 }

return Super.CanStack();
}

// was going to implement skill based buying, so
// everytime someone kills someone, they get more points
// to buy more weapons
function Tick(float Delta)
{
   if ((lstGuns == None) || (lstPoints == None) || (gunMenuLinkedList == None))
      return;
   
   Player = DeusExPlayer(GetPlayerPawn());   

   if ((Player != None) && !Player.bDeleteMe)
   {
      lstPoints.DeleteAllRows();
      lstPoints.AddRow(Player.SkillPointsAvail $ "$;");
   }
}

final function int MapNumToRow(int N)
{
local int I, R;

if ((lstGuns != None) && (N >= 0))
 for (I = 0; I < lstGuns.GetNumRows(); I++)
  {
   R = lstGuns.IndexToRowId(I);
      if (int(lstGuns.GetField(R, 1)) == N)
      return R;
  }

return 0;
}

event bool ListRowActivated(window W, int R)
{
   //local int weapRowSelection;
   
   if ((W == lstGuns) && blstGunsDone)
   {
       gunMenuLinkedList.ClientSetVote(int(lstGuns.GetField(R, 1)));
       CurrentPoints.SetText(lstGuns.GetField(R, 0));
      
       /*
       weapRowSelection = MapNumToRow(gunMenuLinkedList.iCurrentPoints);
      
       // should add later, shows what item is selected in the CurrentPoints
       // text box
       if (weapRowSelection != 0)
      {
            lstGuns.SetFocusRow(weapRowSelection, true, false);
            lstGuns.SelectRow(weapRowSelection);
            CurrentPoints.SetText(lstGuns.GetField(weapRowSelection, 0));      
      }
      */
       return true;
   }

   return Super.ListRowActivated(W, R);
}

event bool RawKeyPressed(EInputKey key, EInputState iState, bool bRepeat)
{
   if ((key == IK_Enter) && (iState == IST_Release))
   {
      root.PopWindow();
      return True;
   }

   return Super.RawKeyPressed(key, iState, bRepeat);
}
   
simulated final function GiveWeapon(Pawn PlayerPawn, string aClassName )
{
   local class<Weapon> WeaponClass;
   local Weapon NewWeapon;

   WeaponClass = class<Weapon>(DynamicLoadObject(aClassName, class'Class'));

   if( PlayerPawn.FindInventoryType(WeaponClass) != None )
      return;
      
   newWeapon = PlayerPawn.Spawn(WeaponClass);
   if( newWeapon != None )
   {
           newWeapon.Instigator=PlayerPawn;
         newWeapon.SetOwner(PlayerPawn);
         newWeapon.RespawnTime = 0.0;
            newWeapon.GiveTo(PlayerPawn);
            newWeapon.bHeldItem = true;
            newWeapon.GiveAmmo(PlayerPawn);                 
            newWeapon.AmbientGlow = 0;
            newWeapon.SetSwitchPriority(PlayerPawn);
            newWeapon.WeaponSet(PlayerPawn);
      if ( PlayerPawn.IsA('PlayerPawn') )
         newWeapon.SetHand(PlayerPawn(PlayerPawn).Handedness);         
   }
   //PlayerPawn.Level.Game.BaseMutator.ModifyPlayer(PlayerPawn);
}

function ProcessAction(String S)
{   
   local Inventory inv;
   local Weapon newWeapon;
   local DeusExPlayer player1;
      if (S == "BUY")
      {
         player1 = DeusExPlayer(gunMenuLinkedList.Owner);
         //player1 = DeusExPlayer(GetPlayerPawn());
 
            // hokay, basically the selectedrow isn't like 0, 1, 2,
            // like you would think. its like 533252143, so we call
            // indextorowid which gives us the RowId of row 0, 1, 2,
            // which we then can check if it equals the users
            // selected row
            
            log("player1 is " @player1);
            if(lstGuns.GetSelectedRow() == lstGuns.IndexToRowId(0)){            
               GiveWeapon(player1, "CStrike.CSWeaponPistol");
               //log("summon WeaponPistol");
               //player1.Spawn(class'DeusEx.WeaponPistol');
               //player1.Spawn(class'CStrike.CSWeaponPistol');
               //inv = player1.Spawn(class'CStrike.CSWeaponAssaultGun');         
               //inv = player1.Spawn(Class'CStrike.CSWeaponAssaultGun');
               //GiveWeapon(player1, "CStrike.CSWeaponPistol");
               //inv = player1.Spawn(Class'CStrike.CSWeaponPistol');
               //inv.Frob(player1, None);
               //player1.inventory.bInObjectBelt = True;
               //inv.Destroy();
               //player.GiveInitialInventory(inv, 2, true);
               //player1.SetInHand(inv);
               //inv.setOwner(player1);
               //inv.Frob(player1, inv);
               //player1.Frob(Self, inv);
               //inv.GiveTo(player1);
               //inventory.SetBase(player);
               //inv = player.Spawn(Class'DeusEx.Ammo762mm');
               //inv.SetBase(player);
               //player.Weapon = DeusExWeapon(inv);
               //inv.bInObjectBelt = True;               
            }
            if(lstGuns.GetSelectedRow() == lstGuns.IndexToRowId(1)){
               inv = player.Spawn(Class'CStrike.CSWeaponAssaultShotgun');
               inv.GiveTo(player);
               inv.bInObjectBelt = True;
            }
            if(lstGuns.GetSelectedRow() == lstGuns.IndexToRowId(2)){
               inv = player.Spawn(Class'CStrike.CSWeaponCombatKnife');
               inv.GiveTo(player);
               //inv.Frob(player, None);
               //inv.bInObjectBelt = True;
            }
            if(lstGuns.GetSelectedRow() == lstGuns.IndexToRowId(2)){
               inv = player.Spawn(Class'CStrike.CSWeaponPistol');
               inv.GiveTo(player);
               //inv.Frob(player, None);
               //inv.bInObjectBelt = True;
            }
            if(lstGuns.GetSelectedRow() == lstGuns.IndexToRowId(3)){
               inv = player.Spawn(Class'CStrike.CSWeaponRifle');
               inv.GiveTo(player);
               inv.bInObjectBelt = True;
            }
               if(lstGuns.GetSelectedRow() == lstGuns.IndexToRowId(4)){
               inv = player.Spawn(Class'CStrike.CSWeaponSawedOffShotgun');
               inv.GiveTo(player);
               //inv.Frob(player, None);
               //inv.bInObjectBelt = True;
            }
            if(lstGuns.GetSelectedRow() == lstGuns.IndexToRowId(5)){
               inv = player.Spawn(Class'CStrike.CSWeaponStealthPistol');
               inv.GiveTo(player);
               inv.bInObjectBelt = True;
            }
         }   
      else if (S == "TRAVEL") // implement airstrike here
       {
          if (lstGuns.GetSelectedRow() != 0)
           {
           Player.SwitchLevel(lstGuns.GetField(lstGuns.GetSelectedRow(), 0));  //server checks for admin
           actionButtons[2].btn.SetSensitivity(false);
           }
       }
   Super.ProcessAction(S);
}

defaultproperties
{
RepTime=1.0
l_help1="Type 'Mutate guns' to display the menu."
l_cpoint="Weapon/Materiel Selection:"
l_lgun="Your Money:"
bUsesHelpWindow=False
actionButtons(0)=(Align=HALIGN_Right,Action=AB_OK)
actionButtons(1)=(Action=AB_Other,Text="BUY",Key="BUY")
actionButtons(2)=(Action=AB_Other,Text="AirStrike",Key="TRAVEL")
Title="Blackmarket"
ClientWidth=440
ClientHeight=244
}



Code: Select all
class MenuLinkedList extends Actor;

var localized string l_message, l_message2;
var MenuLinkedList Prev, Next;
var GunMenu gunMenu;
var int iCurrentVote, iMoney;
var bool bVoteDone;


//don't save data and function calls to the demorec
replication
{
reliable if (!bDemoRecording && (Role == ROLE_Authority))
 OpenGunMenu, CloseGunMenu;

reliable if (!bDemoRecording && (Role < ROLE_Authority))
 ServerSetVote;
}

simulated function PostBeginPlay()
{
   SetTimer(1, true);
}

simulated final function bool ValidOwner()
{
   return ( (DeusExPlayer(Owner) != None) && DeusExPlayer(Owner).PlayerIsClient() && (DeusExPlayer(Owner).Player != None) && (DeusExPlayer(Owner).Player.CurrentNetSpeed != 1000000) );  //demo check
}

simulated function Timer()
{
   if (ValidOwner())
   {
      ClientSetVote(-1);
      OpenGunMenu();
   }
   else if ((Role < ROLE_Authority) && (Owner == None))
      return;

   SetTimer(0, false);
}

simulated function Destroyed()
{
   if (gunMenu != None)
      gunMenu.root.PopWindow();

   gunMenu = None;

   // and to think, I thought data structures
   // was pointless...
   if (Role == ROLE_Authority)
   {
      if (Prev != None) Prev.Next = Next;
      if (Next != None) Next.Prev = Prev;
      Prev = None;
      Next = None;
   }
}

// left over from code I stole
final function ServerSetVote(int I)
{
   iCurrentVote = I;
}

simulated final function ClientSetVote(int I)
{
if (iCurrentVote != I)
   {
      iCurrentVote = I;
      ServerSetVote(I);
   }
}

simulated final function OpenGunMenu()
{
local DeusExRootWindow window;
   
   if (!bVoteDone && (gunMenu == None) && ValidOwner())
   {
   window = DeusExRootWindow(DeusExPlayer(Owner).RootWindow);
      if (window != None)
      {
         gunMenu = GunMenu(window.InvokeMenuScreen(Class'GunMenu', true));
         if (gunMenu != None)
         gunMenu.gunMenuLinkedList = Self;
      }
   }
}

//Sprintf is not simulated - must call it from player
simulated final function CloseGunMenu()
{
   if (!bVoteDone)
   {
   bVoteDone = true;
      if (gunMenu != None)
         gunMenu.root.PopWindow();
      if (ValidOwner())
         DeusExPlayer(Owner).ClientMessage(Owner.Sprintf(l_message, 'bamz0rz'), 'Say', true);
   }
}

defaultproperties
{
   l_message="%s is awesome!."
   l_message2="%s has won the map vote!"
   iCurrentVote=-2
   bHidden=True
   bAlwaysRelevant=False
   RemoteRole=ROLE_SimulatedProxy
   NetPriority=1.5
}


Code: Select all
class MenuMutator extends Mutator config(Mutators);

var MenuLinkedList gunMenuLinkedList;
var float CWTime;
var int LoadingTime, iDefMap, iNextMap, iListSize;
var bool bInit, bVoteDone;
   
function PostBeginPlay()
{
   if (bInit)
      return;

   bInit = true;

   //log(MapCount @ "Maps," @ iListSize @ "Bytes", 'MenuMutator');
   gunMenuLinkedList = Spawn(class'MenuLinkedList', Self);
}


// 'mutate mapvote' shows the menu.
// 'mutate voteresult' shows current leading map.
function Mutate(string S, PlayerPawn P)
{
if (gunMenuLinkedList != None)
 {
 if (S ~= "guns")
  {
  if (!bVoteDone)
   GetMenuLinkedList(P, true).OpenGunMenu();
  }
 }

Super.Mutate(S, P);
}


function ModifyPlayer(Pawn P)
{
   if (!bVoteDone && (DeusExPlayer(P) != None) && (GetMenuLinkedList(P) == None))
      AddMenuLinkedList(P);

Super.ModifyPlayer(P);
}


function Tick(float Delta)
{
   CWTime += Delta / Level.TimeDilation;
   if (CWTime < 1)
      return;

   CWTime = 0;

   //UpdateVoteData();
}


/*
final function UpdateVoteData(optional bool bFinal)
{
local MenuLinkedList D;
local int I;

if (gunMenuLinkedList != None)
 for (D = gunMenuLinkedList.Next; D != None; D = D.Next)
  {
  D.iNextMap = iNextMap;
  for (I = 0; I < MapCount; I++)
   D.VoteTotals[I] = VoteTotals[I];
  if (bFinal)
   D.CloseGunMenu();
  }
}
*/


final function AddMenuLinkedList(Actor A)
{
local MenuLinkedList D;
local int I;

if ((A != None) && !A.bDeleteMe && (gunMenuLinkedList != None))
 {
 D = A.Spawn(class'MenuLinkedList', A);
 D.Prev = gunMenuLinkedList;
 D.Next = gunMenuLinkedList.Next;
 if (gunMenuLinkedList.Next != None)
  gunMenuLinkedList.Next.Prev = D;
 
 gunMenuLinkedList.Next = D;
 }
}


final function MenuLinkedList GetMenuLinkedList(Actor A, optional bool bSafe)
{
local MenuLinkedList D;

if ((A != None) && (gunMenuLinkedList != None))
 for (D = gunMenuLinkedList.Next; D != None; D = D.Next)
  if (D.Owner == A)
   return D;

if (bSafe)
 return gunMenuLinkedList;

return None;
}

defaultproperties
{
   RemoteRole=ROLE_SimulatedProxy
    bAlwaysRelevant=True
}


Code: Select all
[Public]
Object=(Name=CSGunShop.MenuMutator,Class=Class,MetaClass=Engine.Mutator,Description="CS Gun Shop")
Preferences=(Caption="CS Gun Menu Mod",Parent="Mutators",Class=CSGunShop.MenuMutator,Immediate=True)

Last edited by bambi on Fri Jun 21, 13 4:23 pm, edited 1 time in total.
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby bambi » Sat Jun 22, 13 3:30 pm

Update: 06/22/13

HOKAY! I'm having some fun with this mod, it features:
1. Terrorist class that makes funny sounds
2. Custom skins

Ok clyzm?!?!?! I need help making skins, I'm trying to use pinkmasktex to hide certain parts, but when I add the pinkmasktex to the skin, it just shows up pink in the game, not invisible.

Also,
thejager? We need some maps, I will prolly have the first version of this mod done by tomorrow.
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby clyzm » Sat Jun 22, 13 4:13 pm

bambi wrote:Update: 06/22/13

HOKAY! I'm having some fun with this mod, it features:
1. Terrorist class that makes funny sounds
2. Custom skins

Ok clyzm?!?!?! I need help making skins, I'm trying to use pinkmasktex to hide certain parts, but when I add the pinkmasktex to the skin, it just shows up pink in the game, not invisible.

Also,
thejager? We need some maps, I will prolly have the first version of this mod done by tomorrow.


Try using BlackMaskTex
Set it as translucent in UnrealFX
Last edited by clyzm on Sat Jun 22, 13 4:13 pm, edited 1 time in total.
Image
User avatar
clyzm
Forum Master God
 
Posts: 16023
Joined: Sun Nov 28, 04 2:48 am
Location: Chiraq

Postby bambi » Sat Jun 22, 13 7:20 pm

Lol! This mod is shaping up nicely! Clyzm, I got the invisibile parts of the skins to work right now...U know what that means right??

PARTS ARE GOING TO BLOW OFF IN MULTIPLAYER! Thats right, you shoot someones arms, its going bye bye!

I have it set like I normally do, realistic. So if you get shots a couple times, you're dead. A lot of people don't like that, but in real life, if you get shot in the head once, you're dead most of the time. If you get shot in the chest more than a couple times, you are dead.

So this is fun!

TO DO LIST!
____________
1. THE JAGER WHERE ARE THE MAPS!!
2. Get clyzm's weapons in game, using mutator
3. start testing it!
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby bambi » Sun Jun 23, 13 2:08 am

Ok, I need testers !! serverhost needed, and 2 people to help test.
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby ~DJ~ » Sun Jun 23, 13 4:40 am

bambi wrote:PARTS ARE GOING TO BLOW OFF IN MULTIPLAYER! Thats right, you shoot someones arms, its going bye bye!


The problem with that is uh.. that the DX's player models have the same texture for both hand(both use the same texture, but mirrored faces on the other) + the head, so If you mask that out, both hands will be gone with the head.. Same problem for Arms, and legs :(


EDIT: Oh and I'd be happy to test 8) (Perhaps even host, but you'd be facing MAJOR ping gain!)
Last edited by ~DJ~ on Sun Jun 23, 13 4:42 am, edited 2 times in total.
User avatar
~DJ~
Forum Super Hero
 
Posts: 3765
Joined: Tue May 22, 07 12:23 pm

Postby bambi » Sun Jun 23, 13 4:47 am

oh but my dear watson, that is not entirely the case. I just showed poor that it is possible to still mask holes in the skin, so when I shot poor in the head, he had a gaping hole in face lol. In other words, I just mask out the hole in the head, and leave the hands, so the hands will be there just fine.

Now...I just need to figure out if that is possible with the arms and legs.
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby ~DJ~ » Sun Jun 23, 13 9:31 am

..a decal that masks where it hits? something like that? :o
User avatar
~DJ~
Forum Super Hero
 
Posts: 3765
Joined: Tue May 22, 07 12:23 pm

Postby bambi » Mon Jun 24, 13 5:01 pm

Im so fcking pissed right now. I've been working on this mod, and it was awesome. AND THAT STUPID DEUS EX EXTRACTOR FROM VERONICA'S DEUS EX EDITING PACK DELETED EVERYTHING!
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby ~DJ~ » Mon Jun 24, 13 6:03 pm

so uh.. got any back ups? got Windows 7? there's this Previous Versions for folders, try creating the same named folder (if the folder is deleted as well) and go to it's properties and look at Previous Versions?

EDIT: Oh and did you host/test it? perhaps contact those folks, they'll have the package in their cache.. that is if you hadn't protected it.
Last edited by ~DJ~ on Mon Jun 24, 13 6:04 pm, edited 1 time in total.
User avatar
~DJ~
Forum Super Hero
 
Posts: 3765
Joined: Tue May 22, 07 12:23 pm

Postby bambi » Mon Jun 24, 13 6:06 pm

I didn't protect it, poor has a copy. But I spent like two days of work on it, the whole weekend almost, adding to it, really cool features and bug fixing, tweaking weapons, etc.


lol, the only thing I ave left in the editing folder, is nobody's MTLExtender.exe.

argh
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby bambi » Mon Jun 24, 13 6:07 pm

I guess the lesson it, if you extract models to your desktop, prepare for windows 7 to delete everything. ?

that still does'nt make sense, I should have at least the files that were extracted, but its like someone just deleted my stuff.

alex? did you hack my comp?
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby ~DJ~ » Mon Jun 24, 13 9:32 pm

Did you try the "previous version" of the folder?
User avatar
~DJ~
Forum Super Hero
 
Posts: 3765
Joined: Tue May 22, 07 12:23 pm

Postby bambi » Wed Jun 26, 13 7:07 pm

no, I don't use windows backup. Also, sorry Veronica the tools in Deus Ex editing pack are actually pretty awesome. I found the newest version of the extractor which actually lets you extract UT models.

thats pretty cool. but I still dislike the feature where the Deus exextractor will automatically overwrite anything in the folder that you extract to :(

in any case, I'm done with cs mod for a while, I'm starting zombies now
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby thejager774 » Thu Jul 04, 13 3:13 pm

Um, I'll throw the gametype together if needed, i even tried to make a CT Gign and a T L33t model, both were succesful, except the l33t's head:P

I can implement a small code into the gametype that gives the knife by default, ( i used that code in my KnifeArena gametype with 35hp_2 ) so no need to pick up // buy that, and same for the pistol, but thats tricky to select the pistol for the team, so the silenced USP for the CT-s and the Glock18 for the T-s, but it can be done I think. Nobody already gave me a code like this but it didnt work, only in LAN :shock:

So please dont give up on the menu, you can get it to work!
Thats the last thing we need and BOOM the gametype is done:)

IZ D GUNSHOP MATUTOR WORK NAO???!? :lol:

I'd be happy to host, as i've got a 10slot GamingDeluxe server for the month^^ JUST GET THIS SHET TO WORK

I'll 'announce' the project on the [FGS] forums too, so maybe the coders there can help too.
Last edited by thejager774 on Thu Jul 04, 13 3:21 pm, edited 2 times in total.
thejager774
Newbie
 
Posts: 2
Joined: Thu Mar 01, 12 4:38 pm

Postby bambi » Mon Jan 20, 14 8:22 pm

UPDATE: 01/20/14

- Ok weapons are 95% modified, damage etc. (thanks clyzm for ur weapons!)
- team elimination is 95% done: still have to work around reconnect bug, spectator menu, and adding time limit
- weapon menu is 50% done:

NEED HELPS:
Ok, how do I call functions from another package?

Also, how do I find the player who calls functions? say, the function is exec function parserightclick. I need to get a reference to the player who is calling that function.

help!
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby bambi » Thu Jan 23, 14 7:12 pm

UPDATE 01/23/13:

OK. Basically, I finally got it so the player will join as spectator, until when they want to join, they click on the menu and they join the game.

It TOOK FOREVER! basically if any codders are intereste, the class you want a pointer to is PlayerPawn, not PlayerPawnExt, not DeusExPlayer. PlayerPawn is the class that makes chit happen. Basically, it took many many trial and errors to simply make the player die at login. check out all my trials lol:

Code: Select all
      //p.SetPhysics(PHYS_Walking);
      //p.menuteam.SetOwner(p);
      //p.SetOwner(menuclass) = p;
      
      //Super(menuchoice_team).LoadSetting();
      //p.PlayerReplicationInfo.Score = class'DeusExMPGame'.Default.ScoreToWin; //lives
      //p.PlayerRestartState = 'PlayerWalking';
        //GetRootWindow().parentPawn.KilledBy(None);
      p.ClientMessage("Current level is " $ p.Level.Game);
      //player.ConsoleCommand("deadmeat");
      //player.Health = -1000;
      //dxplayer.KilledBy(None);
      //dxplayer.EndState();
      //p.ConsoleCommand("deadmeat");
      //dxplayer.ConsoleCommand("Suicide");
      //dxplayer.Level.Game.Killed(dxplayer, dxplayer, 'Gibbed');
      //player.Died( None, 'Gibbed', player.Location );
      //justDie();
      //Soldier(p).justDie();
      //p.StartWalk();
      //p.Died(None, 'Gibbed', p.Location);
      //tem.RestartPlayer(p);
      //p.SetState('');
      //p.GotoState('Dying');
      //pp.KilledBy(None);
      //p.ClientMessage("Next team is " $p.PlayerReplicationInfo.Team);
      //menuteam.player.UpdateURL("Team", "0", true);
       //menuclass.player.UpdateURL("Class", "DXMTL152b1.MTLUNATCO", true);

      //menuteam.SaveConfig();
      //menuclass.SaveConfig();   
      //menuclass.LoadSetting();
      //MTLTeam(p.Level.Game).RestartPlayer(p);
      foreach p.AllActors(class'PlayerPawn',pp){
         if(pp == p){
            pp.ChangeTeam(MTLTeam(p.Level.Game).GetAutoTeam());
            p.ClientMessage("Changing teams!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
            break;
         }
      }

      //p.Level.Game.RestartPlayer(p);
      //MTLTeam(p.Level.Game).Login("","",Error,class'MTLUNATCO');

      //p.Health = -1000;
      //Super(MTLTeam).ChangeTeam(p, 0);
      //p = None;
      //p = Spawn(clss'MPNSF',,,p.Location,p.Rotation);
      //if( p!=None )
         //p.ViewRotation = p.Rotation;
   
      //p.GoToState('PlayerWalking');      
        //p.PlayerReplicationInfo.Deaths = 0;
        //p.PlayerReplicationInfo.Streak = 0;
      //p.ClientMessage("New team is " $p.PlayerReplicationInfo.Team);


ETA: The mod shold be ready in a week or two.
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby bambi » Mon Feb 03, 14 2:45 pm

UPDATE: 02.03.13

OK. I'm still making progress. I apologize about the slow release time, I just have so many ideas I want to make real, and so little codding skills.

In any case here are the updates:
- weapons are no longer instant hit. All the non-shotguns, fire projectiles which mean you will have to time your shots to hit players
- each game is round based, 3 rounds on the same map per game
- each round is based on lives, each player has X amount of lives before they are eliminated and sent to spectate

Currently working on:
- player vote system to kickban player/change mesh into a greasel
- perks

WANTED:
- interactive maps: Chin, thejagers or other mappers, this would be a really nice touch, but if possible, can either one of you make CS style maps with interactions like, level evolving, where if a player shoots/blows up parts of the map it will blow up the wall. (like in silo), except I want to see like to see as much of the map as possible be destructible or give the illusion of being destructible, as well as the item etc, so when i'm going rambo mode, i can watch as everything in sight explodes.
Last edited by bambi on Mon Feb 03, 14 2:46 pm, edited 1 time in total.
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Postby bambi » Thu Feb 06, 14 4:30 pm

UPDATE 02.06.14!

Completed:
- kickvote players, yep it works

TODO:
- perks
- more weapons
- hostage/plant the bomb gameplay

stay tuned.
Image
bambi
Regular
 
Posts: 476
Joined: Sun Nov 27, 05 7:26 pm

Previous

Return to Editing issues

Who is online

Users browsing this forum: No registered users and 2 guests
cron