Quote:--------
|Client|
--------
- Heavily optimized looping (DFA's code, implemented by Dugor)
- The following game editors do no allow blank names: Spell, Shop, NPC, Item (DFA)
- Removed assignment to MyText from GameLoop, moved to txtMyChat_Change (DFA)
- Added password character for password text boxes (Giaken)
- Made frmMirage.lblName taller to support longer game name's (Giaken)
- frmMirage.lblName and frmMirage's caption are now updated with the game's name (Giaken)
- Fill button added to map editor (Lea's code, implemented by Giaken)
--------
|Server|
--------
- Heavily optimized looping (DFA's code, implemented by Dugor)
- Had problems with Function CanAttackPlayer, fixed but lacks optimization. (DFA)
- Chat box scrolls down while minimized (Giaken)
 Just got that done.
Lea Wrote:MSE4 will be moving into a subversion repository today.
Wewt! Finally!
It should make things better. I am going to add it to the trunk as the current version, if anyone has the older versions please host them somewhere with a version number and I will add all of those to a seperate directory for reference or whatever!
So I know, is it the whole of MSE4? Or just the new stuff. :S I still need the 3.54 stuff(to convert). :S Much easier seperate, meh.
Lea Wrote:I'll be setting up the directory structure today or tomorrow, as well as writing a quick and dirty guide on how this will work 
Sounds kinky.
Have you talked to DFA about this and is it official yet? :? Me, him, and Dugor have been talking on MSN and working on it...where do you come in on this?
What the fuck is going on? I'm so confused. Someone explain in ENGLISH what the fuck is going on? Why the hell do we need the SVN bullshit? AHHHHHHH I'm so lost.
Posts: 2,742
Threads: 115
Joined: Jun 2006
Reputation:
0
Nean Wrote:What the fuck is going on? I'm so confused. Someone explain in ENGLISH what the fuck is going on? Why the hell do we need the SVN bullshit? AHHHHHHH I'm so lost.
To allow access to all the versions of the source, allow global access to the repository and to make organisation a lot easier.
Quote:Robin:
Why aren't maps and shit loaded up in a dynamic array?
Jacob:
the 4 people that know how are lazy
Robin:
Who are those 4 people?
Jacob:
um
you, me, and 2 others?
Posts: 2,742
Threads: 115
Joined: Jun 2006
Reputation:
0
William and I are in charge, we're just letting you have free reign over what you're doing
Quote:Robin:
Why aren't maps and shit loaded up in a dynamic array?
Jacob:
the 4 people that know how are lazy
Robin:
Who are those 4 people?
Jacob:
um
you, me, and 2 others?
DFA is still in charge of this project and he clearly stated earlier that he didn't want to use subversion...
GIAKEN Wrote:DFA is still in charge of this project and he clearly stated earlier that he didn't want to use subversion...
Open Source. Can't change facts.
Mattyw Wrote:GIAKEN Wrote:DFA is still in charge of this project and he clearly stated earlier that he didn't want to use subversion...
Open Source. Can't change facts.
What? :?
Trimmed PlayerMove sub.
There is probably more, actually I know there is more that can be done to it, but I was sort of rushed. It's mostly done though.
Code: Sub PlayerMove(ByVal Index As Long, ByVal Dir As Long, ByVal Movement As Long)
Dim Packet As String
Dim MapNum As Long
Dim x As Long
Dim y As Long
Dim PlayerX As Long, PlayerY As Long
Dim Moved As Byte
' Check for subscript out of range
If IsPlaying(Index) = False Or Dir < DIR_UP Or Dir > DIR_RIGHT Or Movement < 1 Or Movement > 2 Then
Exit Sub
End If
Call SetPlayerDir(Index, Dir)
Moved = NO
Select Case Dir
Case DIR_UP
If GetPlayerY(Index) > 0 Then
PlayerX = GetPlayerX(Index)
PlayerY = GetPlayerY(Index) - 1
Else
If Map(GetPlayerMap(Index)).Up > 0 Then
Call PlayerWarp(Index, Map(GetPlayerMap(Index)).Up, GetPlayerX(Index), MAX_MAPY)
Moved = YES
End If
End If
Case DIR_DOWN
If GetPlayerY(Index) < MAX_MAPY Then
PlayerX = GetPlayerX(Index)
PlayerY = GetPlayerY(Index) + 1
Else
If Map(GetPlayerMap(Index)).Down > 0 Then
Call PlayerWarp(Index, Map(GetPlayerMap(Index)).Down, GetPlayerX(Index), 0)
Moved = YES
End If
End If
Case DIR_LEFT
If GetPlayerX(Index) > 0 Then
PlayerX = GetPlayerX(Index) - 1
PlayerY = GetPlayerY(Index)
Else
If Map(GetPlayerMap(Index)).Left > 0 Then
Call PlayerWarp(Index, Map(GetPlayerMap(Index)).Left, MAX_MAPX, GetPlayerY(Index))
Moved = YES
End If
End If
Case DIR_RIGHT
If GetPlayerX(Index) > MAX_MAPX Then
PlayerX = GetPlayerX(Index) + 1
PlayerY = GetPlayerY(Index)
Else
If Map(GetPlayerMap(Index)).Right > 0 Then
Call PlayerWarp(Index, Map(GetPlayerMap(Index)).Right, 0, GetPlayerY(Index))
Moved = YES
End If
End If
End Select
If Map(GetPlayerMap(Index)).Tile(PlayerX, PlayerY).Type TILE_TYPE_BLOCKED Then
' Check to see if the tile is a key and if it is check if its opened
If Map(GetPlayerMap(Index)).Tile(PlayerX, PlayerY).Type TILE_TYPE_KEY Or (Map(GetPlayerMap(Index)).Tile(PlayerX, PlayerY).Type = TILE_TYPE_KEY And TempTile(GetPlayerMap(Index)).DoorOpen(PlayerX, PlayerY) = YES) Then
Call SetPlayerY(Index, PlayerY)
Packet = SPlayerMove & SEP_CHAR & Index & SEP_CHAR & PlayerX & SEP_CHAR & PlayerY & SEP_CHAR & GetPlayerDir(Index) & SEP_CHAR & Movement & END_CHAR
Call SendDataToMapBut(Index, GetPlayerMap(Index), Packet)
Moved = YES
End If
End If
' Check to see if the tile is a warp tile, and if so warp them
If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index)).Type = TILE_TYPE_WARP Then
MapNum = Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index)).Data1
x = Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index)).Data2
y = Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index)).Data3
Call PlayerWarp(Index, MapNum, x, y)
Moved = YES
End If
' Check for key trigger open
If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index)).Type = TILE_TYPE_KEYOPEN Then
x = Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index)).Data1
y = Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index)).Data2
If Map(GetPlayerMap(Index)).Tile(x, y).Type = TILE_TYPE_KEY And TempTile(GetPlayerMap(Index)).DoorOpen(x, y) = NO Then
TempTile(GetPlayerMap(Index)).DoorOpen(x, y) = YES
TempTile(GetPlayerMap(Index)).DoorTimer = GetTickCount
Call SendDataToMap(GetPlayerMap(Index), SMapKey & SEP_CHAR & x & SEP_CHAR & y & SEP_CHAR & 1 & END_CHAR)
Call MapMsg(GetPlayerMap(Index), "A door has been unlocked.", White)
End If
End If
' They tried to hack
If Moved = NO Then
Call HackingAttempt(Index, "Position Modification")
End If
End Sub
Here's a preview of the MS4 changes so far:
Code: --------
|Client|
--------
- Heavily optimized looping (DFA's code, implemented by Dugor)
- The following game editors do no allow blank names: Spell, Shop, NPC, Item (DFA)
- Removed assignment to MyText from GameLoop, moved to txtMyChat_Change (DFA)
- Added password character for password text boxes (Giaken)
- Made frmMirage.lblName taller to support longer game name's (Giaken)
- frmMirage.lblName and frmMirage's caption are now updated with the game's name (Giaken)
- Fill button added to map editor (Lea's code, implemented by Giaken)
- frmIndex is now opened as a modal (Giaken)
- Max is updated in Npc and Item editor (Giaken)
- Map Item captions changed to 1's and the value minimum is 1 now (Giaken)
- Added a MapItemEditorBltItem and now shows preview when selecting a Map Item (Giaken)
- Added a KeyItemEditorBltItem and now shows preview like the map item does (Giaken)
- Did an extra check for warp tile to make sure their X and Y Offset is 0 (Giaken)
- Attributes are now displayed differently and are centered on the tile better (Giaken)
- Changed the CheckInput sub to use a Select Case (Giaken)
- Changed macro check to be more optimized (reduced to only a few lines) and added the shiftdown check (Giaken)
- Changed NPCs to work off the High_Npc_Index instead of MAX_MAP_NPCS (Giaken)
- Moved the check if we're still connected to the top of the GameLoop (Giaken)
- Moved the Clear button on the map editor to the front (Giaken)
--------
|Server|
--------
- Heavily optimized looping (DFA's code, implemented by Dugor)
- Had problems with Function CanAttackPlayer, fixed but lacks optimization. (DFA)
- Chat box scrolls down while minimized (Giaken)
Quote:--------
|Server|
--------
- Heavily optimized looping (DFA's code, implemented by Dugor)
- Had problems with Function CanAttackPlayer, fixed but lacks optimization. (DFA)
- Chat box scrolls down while minimized (Giaken)
- Added modPlayer - holds anything related to players (Dugor)
- Added OnDeath(ByVal Index As Long) - what will happen when the player dies (Dugor)
- added DamageEquipment(ByVal Index As Long, ByVal EquipmentSlot As Equipment) - reduces the dur. on certain equipment slot (Dugor)
- Reworked AttackNpc, AttackPlayer, NpcAttackPlayer (Dugor)
- Removed reducing of durability from GetPlayerProtection and GetPlayerDamage (Dugor)
- Fixed a couple of packets that werent converted to the enum (Dugor))
I didn't steal your credits. The only thing I looked in your client for was the fill button. Everything else was planned by me so I just went ahead and did it myself.
The newest version should be on the SVN.
I think i did it right.
I won't be able to fix that until tomorrow :/
Posts: 2,742
Threads: 115
Joined: Jun 2006
Reputation:
0
Quote:Robin:
Why aren't maps and shit loaded up in a dynamic array?
Jacob:
the 4 people that know how are lazy
Robin:
Who are those 4 people?
Jacob:
um
you, me, and 2 others?
So is he saying he made the sliding transition ?
Posts: 2,742
Threads: 115
Joined: Jun 2006
Reputation:
0
He said he put it in a blank source. By the looks of things, it's just Lea's released compiled one.
Quote:Robin:
Why aren't maps and shit loaded up in a dynamic array?
Jacob:
the 4 people that know how are lazy
Robin:
Who are those 4 people?
Jacob:
um
you, me, and 2 others?
I'm still waiting to see parts of MS4 put into all the 'engines' out there.
Oh for the people not using SVN - shame on you - but here's a link to the latest code:
http://deadnoggin.com/deadnoggin/MS4-355.rar
GIAKEN Wrote:MS 3.55??
Quote:+++++++++++++
++ MS 3.55 ++
+++++++++++++
*This release was done by DFA and Dugor and Giaken*
Yep. =-p
Lea Wrote:Quote:Line 152: Class MSComctlLib.ListView of control lvwInfo was not a loaded control class.
Line 11: Property Icon in frmServer had an invalid file reference.
Line 30: Property TabPicture(0) in SSTab1 had an invalid file reference.
Line 38: Property TabPicture(1) in SSTab1 had an invalid file reference.
Line 43: Property TabPicture(2) in SSTab1 had an invalid file reference.
Line 158: The property name _ExtentX in lvwInfo is invalid.
Line 159: The property name _ExtentY in lvwInfo is invalid.
Line 160: The property name View in lvwInfo is invalid.
Line 161: The property name Arrange in lvwInfo is invalid.
Line 162: The property name LabelWrap in lvwInfo is invalid.
Line 163: The property name HideSelection in lvwInfo is invalid.
Line 164: The property name AllowReorder in lvwInfo is invalid.
Line 165: The property name FullRowSelect in lvwInfo is invalid.
Line 166: The property name GridLines in lvwInfo is invalid.
Line 167: The property name _Version in lvwInfo is invalid.
Line 172: The property name NumItems in lvwInfo is invalid.
Line 176: The property name ColumnHeader(1) in lvwInfo is invalid.
Line 181: The property name ColumnHeader(2) in lvwInfo is invalid.
Line 186: The property name ColumnHeader(3) in lvwInfo is invalid.
Line 191: The property name ColumnHeader(4) in lvwInfo is invalid.
"frmServer.frx" file doesn't exist?
i got the same error log when i delete that file....
i really like this way of updating with SVN Good work
|