Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

kyle9217

Members
  • Posts

    25
  • Joined

  • Last visited

    Never

kyle9217's Achievements

Newbie

Newbie (1/14)

0

Reputation

  1. im talking about items players drop. if you drop a item on the ground then you shut down the server, then turn on the server and the item you droped will be there still
  2. This brought my CPS down to 50,000 from 1,200,000
  3. anyway to make it where the server can save items on the ground(that a player has droped) when the server shuts down and when you restart the server there there again
  4. i think it mainly had to do with server and client on same pc, sence vb6 applications can only use the first core on the processor both server and and client has to share the 1st core =P i can see now why the lag can occur, running 2+ clients and the server on one core =P i was using an AMD Athlon II X2 3.2 and used AMD Athlon II X3 400e 2.2 for my tests Windows XP SP3 and Win 7 SP1 and i noticed lag occur with 2 clients on tricore and lag occur with 3 clients on the duel core
  5. **(solved! for some reason this problem only existed it the server was run on windows xp, tested on windows 7 it worked normal)**
  6. i guess its not really like a lag, more of packets being sent only when the player with the highest index moves. so if there not sent, the lower index players wont get the updated movements of npcs and damage and such im gona test in windows 7 ill report back my findings
  7. its funny that this is a major issue with Eclipse an no one has seen this and attempted to fix XD Multiplayer is not even possable until this is fixed.
  8. Here is the same problem on EO 2.0 Fresh Copy [media]http://youtu.be/sAlGpqAXzwo[/media]
  9. its not just my client and server, its all E2.0 EA E3.0 the problem happens in all versions, download a fresh copy and test it.
  10. as i said that dosnt fix the problem and i already put it back to that.
  11. yo i was but it has nothing to do with the issue, i was testing somthing
  12. ill upload a video of my findings here in a sec but it went the same, even over the internet, i used a fresh copy of EA to test it [media]http://youtu.be/yeMTwR2_t1I[/media]
  13. ok ill try to explain this the best i can when there is 2 or more people on the server at once, the player with the highest index value will have no lag. when the player with the highest index does not move npc will not move and damage will not show on lower index players screens, but the high index players game will run like normal when the player with the highest index moves then it will update all other players npc locations and battle dmg will appear, as long as the high index player moves the game seems normal to lower index players so if the high index player dosnt move its like all the lower index players games are frozen except they can still walk around. here is a video of me trying to explain ans show you the problem [http://www.youtube.com/watch?v=7NSOPTlOnO0&feature=youtu.be](http://youtu.be/7NSOPTlOnO0)
  14. heres my loop ``` Sub ServerLoop() Dim BuffTimer As Long Dim i As Long, x As Long Dim Tick As Long, TickCPS As Long, CPS As Long, FrameTime As Long Dim tmr25 As Long, tmr500 As Long, tmr1000 As Long, tmr5000 As Long Dim LastUpdateSavePlayers, LastUpdateMapSpawnItems As Long, LastUpdatePlayerVitals As Long Dim PT100 As Long Dim ML As Long ServerOnline = True Do While ServerOnline Tick = GetTickCount ElapsedTime = Tick - FrameTime FrameTime = Tick If Tick > tmr25 Then For i = 1 To Player_HighIndex If IsPlaying(i) Then ' check if they've completed casting, and if so set the actual spell going If TempPlayer(i).spellBuffer.Spell > 0 Then If GetTickCount > TempPlayer(i).spellBuffer.Timer + (Spell(Player(i).Spell(TempPlayer(i).spellBuffer.Spell)).CastTime * 1000) Then CastSpell i, TempPlayer(i).spellBuffer.Spell, TempPlayer(i).spellBuffer.Target, TempPlayer(i).spellBuffer.tType TempPlayer(i).spellBuffer.Spell = 0 TempPlayer(i).spellBuffer.Timer = 0 TempPlayer(i).spellBuffer.Target = 0 TempPlayer(i).spellBuffer.tType = 0 End If End If ' check if need to turn off stunned If TempPlayer(i).StunDuration > 0 Then If GetTickCount > TempPlayer(i).StunTimer + (TempPlayer(i).StunDuration * 1000) Then TempPlayer(i).StunDuration = 0 TempPlayer(i).StunTimer = 0 SendStunned i End If End If ' check regen timer If TempPlayer(i).stopRegen Then If TempPlayer(i).stopRegenTimer + 5000 < GetTickCount Then TempPlayer(i).stopRegen = False TempPlayer(i).stopRegenTimer = 0 End If End If ' HoT and DoT logic For x = 1 To MAX_DOTS HandleDoT_Player i, x HandleHoT_Player i, x Next End If UpdateEventLogic Next frmServer.lblCPS.Caption = "CPS: " & Format$(GameCPS, "#,###,###,###") tmr25 = GetTickCount + 50 End If If Tick > BuffTimer Then For i = 1 To Player_HighIndex For x = 1 To 10 If TempPlayer(i).BuffTimer(x) > 0 Then TempPlayer(i).BuffTimer(x) = TempPlayer(i).BuffTimer(x) - 1 If TempPlayer(i).BuffTimer(x) = 0 Then TempPlayer(i).Buffs(x) = 0 End If End If Next Next BuffTimer = GetTickCount + 1000 End If ' Check for disconnections every 30 second If Tick > tmr5000 Then For i = 1 To MAX_PLAYERS If GetPlayerVital(i, Vitals.HP) = GetPlayerMaxVital(i, HP) Then If frmServer.Socket(i).State > sckConnected Then Call CloseSocket(i) End If End If Next UpdateMapLogic tmr5000 = GetTickCount + 30000 End If If Tick > tmr1000 Then If isShuttingDown Then Call HandleShutdown End If tmr1000 = GetTickCount + 1000 End If If Tick > PT100 Then For i = 1 To Player_HighIndex If IsPlaying(i) Then For x = 1 To MAX_PLAYER_PROJECTILES If TempPlayer(i).ProjecTile(x).Pic > 0 Then ' handle the projec tile HandleProjecTile i, x End If Next End If PT100 = GetTickCount + 50 Next End If ' Checks to update player vitals every 15 seconds - Can be tweaked If Tick > LastUpdatePlayerVitals Then UpdatePlayerVitals LastUpdatePlayerVitals = GetTickCount + 15000 End If ' Checks to spawn map items every 5 minutes - Can be tweaked If Tick > LastUpdateMapSpawnItems Then UpdateMapSpawnItems LastUpdateMapSpawnItems = GetTickCount + 300000 End If ' Checks to save players every 5 minutes - Can be tweaked If Tick > LastUpdateSavePlayers Then UpdateSavePlayers LastUpdateSavePlayers = GetTickCount + 300000 End If If Tick > ML Then UpdateMapLogic ML = GetTickCount + 300 End If If Not CPSUnlock Then Sleep 1 DoEvents ' Calculate CPS If TickCPS < Tick Then GameCPS = CPS TickCPS = Tick + 1000 CPS = 0 Else CPS = CPS + 1 End If Loop End Sub ```
×
×
  • Create New...