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

Ruins of Hell

  • Posts

  • Joined

  • Last visited


Everything posted by Ruins of Hell

  1. > Soul lol best help yet the only thing is how I make Max endurance lvl they can add points to I dont want them going like over 9000 ![:D](http://www.touchofdeathforums.com/community/public/style_emoticons//biggrin.png) > > Soul also I did this so I level 2 and have level 2 endurance so > > 2+2 = 4 > > then > > 4 * 15 + 150 > > is that the right formula or am I missing Frac15 whatever that is lol Sorry, the forum messed up my formatting (it strips backslashes in URLs, or something). It should work now. It's (15 * (level + endurance)) / 2 + 150. So level 2 and 2 endurance: ``` (15 * (2 + 2)) / 2 + 150 (15 * 4) / 2 + 150 15 * 2 + 150 30 + 150 180 ``` With Level 5 and 10 Endurance: ``` (15 * (5 + 10)) / 2 + 150 (15 * 15) / 2 + 150 225 / 2 + 150 112.5 + 150 162.5 ``` Now obviously you can't have 162.5 health. Since the function returns an integer, the result is rounded using what's called _banker's rounding_. I won't go into that here, only note that the result is 162. ``` 162 ```
  2. > When I try to sign in I get the message: "Server seems to be down, go to touchofdeathforums.com" or something like that. How can I fix it? The solutions above are all valid for different cases, but it's probably better if you just start server.exe, located in the server/ directory.
  3. > Wait, but there is usually like: sever.VBP and server.VBW aren't these files the same thing? Because I can open server.vbw with the express version. The express version can't actual compile the files (or save the results).
  4. > Hows does the system know how much to add to your hp does it do like 2 times 15 + 150 to find next level total health added onto? It uses the following formula, as all of the posts above have shown. This is the formula for warrior (or class 1). The one below it is for Mage (or class 2) and the last one is for any other class. ``` vital = ((GetPlayerLevel(Index) / 2) + (GetPlayerStat(Index, Endurance) / 2)) * 15 + 150 ``` So: ![](http://latex.codecogs.com/gif.latex.gif?%5Cfrac{15%28level+endurance%29}{2}+150%25.png) Then the next 3 formulas are for the player's magicka.
  5. You should read [this guide](http://www.touchofdeathforums.com/community/index.php?/page/index.html/wiki.html/_/eclipse-origins/tutorials-1344890800/addingediting-graphics-r4).
  6. > I know, but I was wondering if anyone had made it work on Eclipse Advance, as that is based on Eclipse Nightly, which is basically Eclipse Origins 3.0. Just taking a precursory glance, I see no reason why it shouldn't work with Eclipse Nightly. I would make a back up, add it in, and report back on whether or not it works. Basically, if the tutorial does any rendering, it won't work on Eclipse Nightly without adaptation.
  7. > Can you help me to know the code, to pass maps, from Eclipe Evolution 2.7 to Eclipse Event System 2.3? > > I will make a converter to share, cause I have 700 maps in my mmorpg game XD The Programming Board is for programming outside of Eclipse.
  8. > it says i have to have a static IP, last time i tried that, i messed my internet up big time You could use [no-ip](http://www.no-ip.com/).
  9. Hover your cursor over different variables (index, wait. Then invNum, wait). It should come up with the values of the variables. Tell us what they are here.
  10. > ~~okay, so how does someone connect to me? like what do they do after they download eclipse to their server?~~ > > nevermind. is portforwarding safe? or should i use hamachi Portforwarding is safe. Hamachi is a third-party client which your users will have to install to play. Personally, I recommend portforwarding.
  11. > i dont know how to do it though. im trying to use this [http://www.touchofde…read-tutorials/](http://www.touchofdeathforums.com/community/index.php?/topic/83283-must-read-tutorials/) but none of the links work Try using the search, it's really much more improved than before. You can use the gear icon (next to the search bar, at the top-right) and then filter by forum to search just for tutorials. [Here's a guide for portforwarding, if you want.](http://www.touchofdeathforums.com/community/index.php?/page/index.html/wiki.html/_/eclipse-origins/tutorials-1344890800/publishing-your-game-r5)
  12. Run it through VB6, tell us what line it highlights. Then go through each individual variable in the line and tell us what each of them say.
  13. > The Npcs DO respawn.. Just seem to be invisible (only for the person who warped/died though) other players just see that person walk through the npcs the person who warped cant see.. It's a small but irritating bug, most likely caused by me, where do I start looking though lol? :L > > (Sorry for double post then..) Can you replicate the same issue with a default version of the event system with no source edits?
  14. > Soul it is not working. MAX_LONG was undefined, i defined it in modConstants server side. Sorry about that, I thought I changed it everywhere but I must have missed that one spot. > If i paste the same code into "Sub PlayerMapGetItem(ByVal index As Long)" i get undefined ItemVal error You can't just copy and paste it around, it's not a general solution. Also all of these checks should be done server-side. Anyway, in PlayerMapGetItem server-side, change: ``` Call SetPlayerInvItemValue(index, n, GetPlayerInvItemValue(index, n) + MapItem(mapNum, i).Value) ``` to: ``` If AddCheckOverflow(GetPlayerInvItemValue(index, n), MapItem(mapNum, i).Value) = 0 Then Call SetPlayerInvItemValue(index, n, GetPlayerInvItemValue(index, n) + MapItem(mapNum, i).Value) Else Call SetPlayerInvItemValue(index, n, 2147483647) End If ``` * * * So here's a generalization. Change: ``` Call SetPlayerInvItemValue(index, n, a + ![B)](http://www.touchofdeathforums.com/community/public/style_emoticons//cool.png) ``` to: ``` If AddCheckOverflow(GetPlayerInvItemValue(index, n), MapItem(mapNum, i).Value) = 0 Then Call SetPlayerInvItemValue(index, n, a + ![B)](http://www.touchofdeathforums.com/community/public/style_emoticons//cool.png) Else Call SetPlayerInvItemValue(index, n, 2147483647) End If ``` * * * > Not necessarily an error, just people being silly and not understanding the bounds of a LONG value and various other ones(And nobody ever implementing a proper solution, but then again why would you ever have such abysmal amounts of gold in your game?). I agree, but the engine should always be fool-proof, and not crash if someone was to manage to somehow exploit the game to gain that much gold, or if someone decides to add too much gold.
  15. Add the player's name to the packet, and then use FindPlayer(name) to convert it into an index. Then use SetPlayerSprite(FindPlayer(name), number) to set it. The packet is sent in SendSetSprite, so search for that sub to see where it is called (two places).
  16. > How would I go about adding exceptions for GMs? Change: ``` ' Check to see if its a Party Dungeon If Map(mapnum).Moral = MAP_MORAL_PARTY_MAP Then ' Check to make sure the player is in a party. If not exit the sub so they dont change maps If TempPlayer(index).inParty < 1 Then Call PlayerMsg(index, "This is a party map. You have to be in a party to enter it.", Red) Exit Sub End If End If ``` to: ``` ' Check to see if its a Party Dungeon If Map(mapnum).Moral = MAP_MORAL_PARTY_MAP Then ' Check to make sure the player is in a party. If not exit the sub so they dont change maps If TempPlayer(index).inParty < 1 And GetPlayerAccess(index) = 0 Then Call PlayerMsg(index, "This is a party map. You have to be in a party to enter it.", Red) Exit Sub End If End If ``` Note this line: ``` If TempPlayer(index).inParty < 1 And GetPlayerAccess(index) = 0 Then ``` That says, "If the player is not in a party (their party number is 0) and if the player is a regular user, then stop them from changing to a party map".
  17. > Hi I was wondering why cant you change other peoples sprites wth Admin controls in 3.0 and if there is a command to for admins. If their isnt can i edit their sprite in the .bin file of their account in the server folder because I making member characters and I would like to know how. No, there is no slash command to change a player's sprite. You can edit the particular bin file if you have a hex editor, although it's not really an official method. If you're interested, it starts at the 45 byte and is 4 bytes long. Of course, it would also be an easy source edit.
  18. Any windows computer will do for hosting. Memory isn't really that necessary for an Eclipse game, and bandwidth is a more limiting factor. To make a map PvP, go to /editmap > Properties > Moral: No moral. There's no webscript, although it is certainly possible. MP3 support can be added with this source tutorial: http://www.touchofdeathforums.com/community/index.php?/topic/128597-adding-mp3-to-eo23/ To translate Eclipse, you'll need to edit the strings in VB6 (Visual Basic 6, programming language Eclipse is written in). Note that VB6 does not, by default support UTF-8\. Some Czech characters, such as ř or í, won't work. You'll have to find a workaround to support it. It's certainly possible, but it's not in Eclipse by default.
  19. Ruins of Hell

    Map size

    > Why does the map size have to get involved with screen size ? I just don't get it… The idea is that the default map size should be the amount that can be viewed without scrolling, I think because the original Mirage engine didn't support scrolling at all.
  20. Similiar topic is here: [http://www.touchofde…s-of-my-money/.](http://www.touchofdeathforums.com/community/index.php?/topic/128955-engine-is-jealous-of-my-money/.) Eclipse does have a small problem with overflow. Here's a fix which will **STOP** the player from gaining gold after a certain amount. Note that it will not put the overflow into another stack, which would be a better idea. * * * Server-side Add (anywhere): ``` ' Returns 0, if there is no overflow, or the overflow, if one exists. ' Public Function AddCheckOverflow(ByVal a As Currency, ByVal b As Currency) As Long ' Currency is 8 bytes, as opposed to Long's 4 bytes. '' If a + b > 2147483647 Then ' 2147483647 = 2**31 - 1 ' AddCheckOverflow = CLng((a - 2147483647) + ![B)](http://www.touchofdeathforums.com/community/public/style_emoticons//cool.png) Else AddCheckOverflow = 0 End If End Function ``` Then replace Function GiveInvItem with the following function: ``` Function GiveInvItem(ByVal index As Long, ByVal itemnum As Long, ByVal ItemVal As Long, Optional ByVal sendUpdate As Boolean = True) As Boolean Dim i As Long ' Check for subscript out of range If IsPlaying(index) = False Or itemnum MAX_ITEMS Then GiveInvItem = False Exit Function End If i = FindOpenInvSlot(index, itemnum) ' Check to see if inventory is full If i 0 Then If AddCheckOverflow(GetPlayerInvItemValue(index, i), ItemVal) 0 Then ItemVal = 2147483647 - GetPlayerInvItemValue(index, i) End If Call SetPlayerInvItemNum(index, i, itemnum) Call SetPlayerInvItemValue(index, i, GetPlayerInvItemValue(index, i) + ItemVal) If sendUpdate Then Call SendInventoryUpdate(index, i) GiveInvItem = True Else Call PlayerMsg(index, "Your inventory is full.", BrightRed) GiveInvItem = False End If End Function ``` There are probably more errors like this.
  21. Ruins of Hell

    Map size

    > when I changed those values, the map stopped scrolling ( dunno if it's the right term ), my player gets out of the screen Sorry, I should have elaborated more than that. You have two options: 1. Increase them, and then also change the picScreen size to fit. 2. Go to Sub ClearMap() (client/server-side) and change the values there. Example: ``` Map.MaxX = MAX_MAPX Map.MaxY = MAX_MAPY ``` to: ``` Map.MaxX = 14 ' change these values. Map.MaxY = 11 ```
  22. Only one topic per question.
  • Create New...