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

Valentine90

Members
  • Posts

    115
  • Joined

  • Last visited

    Never

Everything posted by Valentine90

  1. Thanks for commenting Perhaps Robin has created the sound system in item editor to equip or unequip items, but I take into consideration that there are people who do not use animations in weapons in these cases the sound system does not work would be considered a bug.
  2. **Sorry my english** The Party system contains several serious errors: 1) You can accept invitation to anyone who has left the game; 2) The name of the new leader of the party is wrong; 3) When the party ends some members continues with a party that no longer exists; 4) Other errors. **Open Server** **1 -** In **modHandleData**, look for: ``` Sub HandleAcceptParty ``` **2 -** Below add: ``` If Not IsConnected(TempPlayer(index).partyInvite) Or Not IsPlaying(TempPlayer(index).partyInvite) Then TempPlayer(index).partyInvite = 0 Exit Sub End If ``` **3 -** In **modGameLogic**, look for: ``` Public Sub Party_PlayerLeave ``` **4 -** Replace: ``` PartyMsg partyNum, GetPlayerName(i) & " is now the party leader.", BrightBlue ``` **5 -** By: ``` PartyMsg partyNum, GetPlayerName(Party(partynum).Leader) & " is now the party leader.", BrightBlue ``` **6 -** Beneath of: ``` ' remove from array For i = 1 To MAX_PARTY_MEMBERS If Party(partynum).Member(i) = index Then Party(partynum).Member(i) = 0 Exit For End If Next ``` **7 -** Add: ``` TempPlayer(index).inParty = 0 TempPlayer(index).partyInvite = 0 ``` **8 -** Beneath of: ``` For i = 1 To MAX_PARTY_MEMBERS If Party(partyNum).Member(i) = index Then Party(partyNum).Member(i) = 0 Exit For End If Next ``` **9 -** Add: ``` TempPlayer(index).inParty = 0 TempPlayer(index).partyInvite = 0 ``` **10 -** Look for: ``` Public Sub Party_InviteAccept ``` **11 -** Replace: ``` Dim partynum As Long, i As Long ``` **12 -** By: ``` Dim partynum As Long, i As Long, x As Long ``` **13 -** Replace: ``` SendPartyVitals partyNum, targetPlayer ``` **14 -** By: ``` For x = 1 To MAX_PARTY_MEMBERS If Party(partynum).Member(x) > 0 Then SendPartyVitals partynum, Party(partynum).Member(x) End If Next ``` **15 -** Beneath of: ``` PlayerMsg targetPlayer, "Party is full.", BrightRed ``` **16 -** Add: ``` TempPlayer(targetPlayer).partyInvite = 0 ``` **17 -** Look for: ``` Public Sub Party_ShareExp ``` **18 -** Beneath of: ``` Dim expShare As Long, leftOver As Long, i As Long, tmpIndex As Long ``` **19 -** Add: ``` If Party(partynum).MemberCount
  3. There are two corrections if already posted I'm sorry, but I searched and could not find anything to fix the problem complete of slide. This fix is complete.
  4. **Sorry my english** There are two errors, the first error happens when you put a slide: ![](http://img683.imageshack.us/img683/1885/imagemzg.png) And in front of the slide has lock or resource, and the collides player toward these. The second error is that the player does not slide to the direction chosen in the editor, this tutorial will teach correct both errors occurring on the server. **Open Server** 1 - In **modPlayer**, look for: ``` ' Slide If .Type = TILE_TYPE_SLIDE Then ForcePlayerMove Index, MOVING_WALKING, GetPlayerDir(Index) Moved = YES End If End With ``` 2 - Replace with: ``` ' Slide If .Type = TILE_TYPE_SLIDE Then Select Case .Data1 Case DIR_UP If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index) - 1).Type = TILE_TYPE_RESOURCE Or Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index) - 1).Type = TILE_TYPE_BLOCKED Then Exit Sub Case DIR_LEFT If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index) - 1, GetPlayerY(Index)).Type = TILE_TYPE_RESOURCE Or Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index) - 1, GetPlayerY(Index)).Type = TILE_TYPE_BLOCKED Then Exit Sub Case DIR_DOWN If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index) + 1).Type = TILE_TYPE_RESOURCE Or Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index) + 1).Type = TILE_TYPE_BLOCKED Then Exit Sub Case DIR_RIGHT If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index) + 1, GetPlayerY(Index)).Type = TILE_TYPE_RESOURCE Or Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index) + 1, GetPlayerY(Index)).Type = TILE_TYPE_BLOCKED Then Exit Sub End Select ForcePlayerMove Index, MOVING_WALKING, .Data1 Moved = YES End If End With ``` **Credits** Valentine Ricardo/iHero
  5. > Wow you always finding nice bug fixes ![:P](http://www.touchofdeathforums.com/community/public/style_emoticons//tongue.png) keep it up ! > > By the way : > > Do you know how to fix this bug? ^^ > > [http://www.touchofde…ced-damage-bug/](http://www.touchofdeathforums.com/community/index.php?/topic/129603-eadvanced-damage-bug/) Sorry, but only fix bugs of official versions of eclipse origins.
  6. **Sorry my english** When a player attacks a target with your weapon, is not sent to the sound of the weapon chosen items in the editor. **Open Server** **1 -** In **modHandleData**, look for: ``` Sub HandleAttack ``` **2 -** After of: ``` CheckResource index, x, y ``` **3 -** Add: ``` If GetPlayerEquipment(index, Weapon) > 0 Then SendPlayerSound index, GetPlayerX(index), GetPlayerY(index), SoundEntity.seItem, GetPlayerEquipment(index, Weapon) ``` **Credits:** Valentine
  7. That's fine, but do not recommend, especially these days when we have DirectX8, the alpha leaves the game slow.
  8. **Sorry my english** When you unequip an item, automatically updates your status, but when you team does not update. **Open Server** **1 -** In **modPlayer**, look for: ``` Public Sub UseItem ``` **2 -** WITHIN THIS SUB, where you have: ``` Call SendMapEquipment(index) ``` **3 -** Add: ``` Call SendStats(index) ``` Note: You will only put this code inside the **Sub UseItem**, believe that will have 4 codes equal to the second step of this tutorial, then you have to add the code for the third step below the 4 lines equal to the second stage. **Credits:** Valentine
  9. **Sorry my english** I know that there may be tutorials for the same purpose, but this is the most simple and quick to make two-handed weapon. **Open Server** **1** - In **modPlayer**, look for: ``` Case ITEM_TYPE_WEAPON ``` **2** - Below add: ``` ' if you have a shield equipped and weapon is 2 hands If GetPlayerEquipment(Index, Shield) > 0 Then If ItemNum = 1 Then PlayerMsg Index, "You must remove the shield to equip a two-handed weapon.", BrightRed Exit Sub End If End If ``` **3** - Look for: ``` Case ITEM_TYPE_SHIELD ``` **4** - Below add: ``` ' If a weapon is equipped with 2 hands If GetPlayerEquipment(Index, Weapon) > 0 Then If GetPlayerEquipment(Index, Weapon) = 1 Then PlayerMsg Index, "You can not use shield, you are using a two-handed weapon.", BrightRed Exit Sub End If End If ``` **5** - Now just modify the ID 1 for two-handed weapon of editor items. Note: If you want to put more than one two-handed weapon, you should use **Or** like this: ``` If ItemNum = 1 Or ItemNum = 2 Then ``` Also ``` If GetPlayerEquipment(Index, Weapon) = 1 Or GetPlayerEquipment(Index, Weapon) = 2 Then ``` **Credits:** Valentine
  10. **Sorry my english** Some things go unnoticed when tested on localhost, but when you can find online is very serious errors, you can click a button to trade 2 times or more by example and cause errors on the server, or to also accept an exchange, the following exchange is accepted automatically, without you confirm, this tutorial will fix these bugs and various other erros in trade. **Open Server** **1 -** In **modHandleData**, look for: ``` tradeTarget = TempPlayer(index).TradeRequest ``` **2 -** Upon add: ``` If TempPlayer(index).InTrade > 0 Then TempPlayer(index).TradeRequest = 0 Else ``` **3 -** Before End Sub and at the same time, after of: ``` SendTradeUpdate tradeTarget, 1 ``` **4 -** Add: ``` End If ``` **5 -** Now look for: ``` Sub HandleAcceptTrade( ``` **6 -** After of: ``` Dim itemnum As Long ``` **7 -** Add: ``` If GetPlayerMap(index) GetPlayerMap(TempPlayer(index).InTrade) Then Exit Sub ``` **8 -** Beneath of: ``` tradeTarget = TempPlayer(index).InTrade ``` **9 -** Add: ``` If tradeTarget > 0 Then ``` **10 -** After of: ``` TempPlayer(index).InTrade = 0 TempPlayer(tradeTarget).InTrade = 0 ``` **11 -** Add: ``` TempPlayer(index).AcceptTrade = False TempPlayer(tradeTarget).AcceptTrade = False ``` **12 -** Before End Sub and at the same time, after of: ``` SendCloseTrade tradeTarget ``` **13 -** Add: ``` End If ``` **14 -** Now look for: ``` Sub HandleDeclineTrade( ``` **15 -** Beneath of: ``` tradeTarget = TempPlayer(index).InTrade ``` **16 -** Add: ``` If tradeTarget > 0 Then ``` **17 -** After of: ``` TempPlayer(index).InTrade = 0 TempPlayer(tradeTarget).InTrade = 0 ``` **18 -** Add: ``` TempPlayer(index).AcceptTrade = False TempPlayer(tradeTarget).AcceptTrade = False ``` **19 -** Before End Sub and at the same time, after of: ``` SendCloseTrade tradeTarget ``` **20 -** Add: ``` End If ``` **Credits:** Valentine
  11. **Sorry my english** **Bug 1** I noticed the editor of spells, that the more you change the direction in which the player will be teleported to change by a kind of magic, the player is not chosen this direction: ![](http://img189.imageshack.us/img189/2125/34095202.png) **Open Server** **1** - In **modCombat**, look for: ``` SendAnimation mapnum, Spell(SpellNum).SpellAnim, 0, 0, TARGET_TYPE_PLAYER, Index ``` **2** - Below this line add: ``` SetPlayerDir Index, Spell(SpellNum).Dir ``` **Bug 2** I noticed the same editor spells the maximum number of graphics magic is not the amount of graphics that exists in the folder, as occurs with other editors ![](http://img201.imageshack.us/img201/2821/71840658.png) **Open Client** **1** - In **modGameEditors**, look for: ``` .scrlMap.Max = MAX_MAPS ``` **2** - Below this line add: ``` .scrlIcon.Max = NumSpellIcons ``` **Credits:** Valentine
  12. If already posted sorry, but I tried many tutorials here and did not think anything about it.
  13. It's not about the system Spell NPC, the **Sub SpellNpc_Effect** refers to NPC getting an damage from a spell player and not the npc using magic.
  14. The best thing is you can create light, this is great!
  15. This looks great, thanks for sharing! You want to do the same in DirectX8?, I believe that would be great, since it would be much more beautiful and charming.
  16. Thanks, I hope to contribute enough!
  17. **Sorry my english** This is a simple fix, but it is necessary. When a player plays down an herb potion and then, when you press Enter to pick up again, it does not catch the last order to first: ![](http://img849.imageshack.us/img849/7196/27311928.jpg) What would be the potion (last item) and then the herb He takes the first item that was played, the item is below ![](http://img42.imageshack.us/img42/2848/64168709.jpg) **Open Server** **1 -** In **modPlayer**, look for: ``` Sub PlayerMapGetItem ``` **2 -** Replace: ``` For i = 1 To MAX_MAP_ITEMS ``` **3 -** By: ``` For i = MAX_MAP_ITEMS To 1 Step -1 ``` **Credits:** Valentine
  18. **Sorry my english** When you attack a monster with magic that affects HP, is sent to the client's vital Monster (HP and MP), but when you heals the HP, MP or MP Affects Monster, the update is not sent to players. **Open Server** **1 -** In **modCombat**, look for: ``` Public Sub SpellNpc_Effect ``` **2 -** After: ``` If increment Then MapNpc(MapNum).NPC(index).Vital(Vital) = MapNpc(MapNum).NPC(index).Vital(Vital) + Damage If Spell(SpellNum).Duration > 0 Then AddHoT_Npc MapNum, index, SpellNum, SpellLevel End If ElseIf Not increment Then MapNpc(MapNum).NPC(index).Vital(Vital) = MapNpc(MapNum).NPC(index).Vital(Vital) - Damage End If ``` **3 -** Add: ``` ' send update SendMapNpcVitals MapNum, index ``` **Credits:** Valentine
  19. **Sorry my english** The fix is ​​simple, but the error is serious. Suppose you are on an exchange and trade offers on an item, this item will appear in trade for both players, as should happen … the problem is if you equip that item, it disappears in exchange for you, but not for the other player, so you can trick him using the trade to sell an item that will not him. **Open Server** **1 -** In **modPlayer**, look for: ``` Public Sub UseItem(ByVal index As Long, ByVal invNum As Long, ByVal useType As Byte) ``` **2 -** After: ``` ' Prevent hacking If invNum < 1 Or invNum > MAX_ITEMS Then Exit Sub End If ``` **3 -** Add: ``` If TempPlayer(index).InTrade > 0 Then Exit Sub ``` **Credits:** Valentine
  20. **Sorry my english** When a player uses a spell in an area that affects MP, the magic affects you. **Open Server** **1** - In **modCombat**, look for: ``` Case SPELL_TYPE_HEALHP, SPELL_TYPE_HEALMP, SPELL_TYPE_DAMAGEMP ``` **2 -** Scroll down to find: ``` For i = 1 To Player_HighIndex If IsPlaying(i) Then If GetPlayerMap(i) = GetPlayerMap(index) Then If isInRange(AoE, x, y, GetPlayerX(i), GetPlayerY(i)) Then SpellPlayer_Effect VitalType, increment, i, Vital, spellNum DidCast = True End If End If End If Next ``` **3 -** Replace with: ``` For i = 1 To Player_HighIndex If IsPlaying(i) Then If i index Then If GetPlayerMap(i) = GetPlayerMap(index) Then If isInRange(AoE, x, y, GetPlayerX(i), GetPlayerY(i)) Then SpellPlayer_Effect VitalType, increment, i, Vital, spellNum DidCast = True End If End If End If End If Next ``` **Créditos:** Valentine
  21. **Sorry my english** **Valentine** I saw this tutorial originally posted here, he had a few bugs, was incomplete and only worked with npcs, so I completed. **Deathbeam** This tutorial will do the following: If you have target and faces the same, the player will automatically attack him to death. **CLIENT SIDE** **1 -** In **frmMain**, create in **picOptions** > **Checkbox > > Name:** chkAutoAttack > > **Caption:** Auto Ataque **2 -** In **modGameLogic** find this: ``` Dim tmr10000 As Long ``` **3 -** Below add: ``` Dim x As Long, y As Long ``` **4 -** Now look for: ``` If CanMoveNow Then Call CheckMovement ' Check if player is trying to move Call CheckAttack ' Check to see if player is trying to attack End If ``` **5 -** Replace with this: ``` If frmMain.chkAutoAttack.Value = YES Then If CanMoveNow Then Select Case Player(MyIndex).Dir Case DIR_UP X = GetPlayerX(MyIndex) y = GetPlayerY(MyIndex) - 1 Case DIR_DOWN X = GetPlayerX(MyIndex) y = GetPlayerY(MyIndex) + 1 Case DIR_LEFT X = GetPlayerX(MyIndex) - 1 y = GetPlayerY(MyIndex) Case DIR_RIGHT X = GetPlayerX(MyIndex) + 1 y = GetPlayerY(MyIndex) End Select If myTargetType = TARGET_TYPE_NPC Then If X = MapNpc(myTarget).X And y = MapNpc(myTarget).y Then ControlDown = True ElseIf myTargetType = TARGET_TYPE_PLAYER Then If X = Player(myTarget).X And y = Player(myTarget).y Then ControlDown = True End If Call CheckMovement ' Check if player is trying to move Call CheckAttack ' Check to see if player is trying to attack End If Else If CanMoveNow Then Call CheckMovement ' Check if player is trying to move Call CheckAttack ' Check to see if player is trying to attack End If End If ``` **Credits:** Deathbeam (As the original creator of the tutorial) Valentine (By correcting some errors in the tutorial and post here)
  22. **Sorry my english** **Description:** A simple detail that can not even call a bug, a lack of a = (Equals) on condition that when you have 999,999 of golds this doesn't happen: ![](http://img833.imageshack.us/img833/1340/imagemczb.png) **Open Client** **1 -** In **modGameLogic**, [background=rgb(240, 247, 250)]look for:[/background][background=rgb(240, 247, 250)] [/background] ``` Public Function ConvertCurrency(ByVal Amount As Long) As String ``` **2 -** [background=rgb(240, 247, 250)]Replace:[/background][background=rgb(240, 247, 250)] [/background] ``` ElseIf Int(Amount) < 999999 Then ``` **3 -** By. ``` ElseIf Int(Amount)
  23. What is already in the engine is fine, and even is cheap … penalty I only have 36 pounds and the rest of the money is in a Brazilian site ¬ ¬ I know it's not a problem for anyone, even to asking to lower the price, was only one outburst
×
×
  • Create New...