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

shadowwulf

Members
  • Posts

    2008
  • Joined

  • Last visited

    Never

Everything posted by shadowwulf

  1. -_- The point is, if you think it's a good resource, don't make other people run around for it. Show it off right here. Upload it to here so when that link dies, you still continue providing the resource. I am sure this used to be a rule, I believe now it is just recommended.
  2. Are you only testing as an admin? attack on sight ignores admins. and there is no scripting in EO
  3. Please provide a screenshot.. or better yet upload them to this forum rather than use an outside link that will soon die.
  4. @Death's: > I got a question … how do i put a script in the game... i alreaddy have a script.... Although there isn't a scripting engine in this version, scripting is not that much different than source coding. Get your hands on VB6 if you need to and look around. Your script can probably be placed and simply called, or you may need to modify existing code. If you are even a moderate scripter, source edits should come as quite easy to adapt to. Just keep alot of backups in case you botch the whole thing. :P
  5. there are installers that you can get that will literally just run the ELI then setup your game using a few extra screens such as an EULA. I was using one that ran the ELI, setup the auto-updater, then the game, and then opened the updater upon completion. This is also good when you setup the updater to be the main exe and run the game on exit.
  6. well this is probably the worst possible way to do it… but you can just triple the blt code for the char.png. but have it look for your head.png, body.png, legs.png or whatever. just store the file names as variables in character creation. you would of course have to make a new char creation menu screen to accommodate gathering these settings.
  7. This is probably old to some of you… but i had the same reaction as the last frame. http://picsauce.com/post/8304604041/just-do-it
  8. step 1, get engine step 2, setup better site step 3, find Jacob step 4, get off the island
  9. Thanks Robin. I am saving up for the dev edition. I really like how it progressed. I have been doing crap loads of edits to the eclipse engine but half of them are already finished in crystalshire so I don't see the point in reinventing the wheel.
  10. So I am looking into small perks for small 'donations.' Looks like I can choose any one of various payment APIs and set it up on my website. It will process and log transactions for me. What I am not seeing is how to make that transaction automatically effect the player. Lets say a player can buy 100 gold for 5 bucks. They purchase it. I get an email or log in and check the logs. But I don't see how does the player's .dat file get changed? I would think manually doing all transactions would be a pain once the user base grows.
  11. I haven't messed with it yet, but I think you would be looking for this. Inside ModGameLogin(client side): ``` ' Check if completed walking over to the next tile If Player(Index).Moving > 0 Then If GetPlayerDir(Index) = DIR_RIGHT Or GetPlayerDir(Index) = DIR_DOWN Then If (Player(Index).XOffset >= 0) And (Player(Index).YOffset >= 0) Then Player(Index).Moving = 0 If Player(Index).Step = 1 Then Player(Index).Step = 3 Else Player(Index).Step = 1 End If End If Else If (Player(Index).XOffset
  12. Off Topic: Why is Robin a newbie now? On: As a basic engine, this is pretty much done. Just a couple bug fixes. Funny enough I don't experience any of the bugs people mention LOL. Hope all is going well Robin.
  13. i read the title and immediately though of the error "You haven't had enough sex to use this!" lulz
  14. He is only set to watched right now. I am locking this until he reached Admin staff about it.
  15. ~Bump~ ~~Anyone know? If i can get this error to go away I might release me completed sub(which works for player vs player also)~~ Resolved. had to edit a data type.
  16. "Removed because of plagiarism." This is so saddening. We see people step forward to offer artistic talent and this makes everyone avoid them like a disease. If you want to show off your work be sure not to use something that was an edit or anything like anyone else's work..
  17. Found a bug with this still. In situations where : ``` Angle = Math.Tan((nX - pX) / (pY - nY)) ```is basically this: ``` Angle = Math.Tan((2X)/(1X)) ```You get an overflow error. I though rounding to the neared 6th decimal space would help but it didnt. Any ideas? I guess i could add a check where If A = (B/2) then do everything based on moving +/-1 by +/-1 but that would be pretty sloppy…
  18. ok. I finally got this working perfectly!!! It requires alot of work even when based off of this but it was a good start none the less. Hints to those trying it. 1:Trig(aka triangle math) doesnt work when using a straight line(duh). 2:Make each check work towards a false result with exit and set to true before the end. 3:For distances less than 3 you tend to get overflow errors without a work around.
  19. search around. its been done.
  20. I think i worked out most of the kinks. This is the wall i hit though. Looks Like it needs to add my Y to that variable. Not sure yet. (Just thought I would post these while thinking it out…) My version so far... >! Public Function CanPlayerTargetNPC(ByVal Index As Long, ByVal NPCNum As Long) As Boolean Dim pX As Long, pY As Long 'Player coords Dim nX As Long, nY As Long 'npc coords Dim Dist As Long 'Diagonal distance Dim LoopX As Long, LoopY As Long Dim Angle As Long >! pX = Player(Index).x pY = Player(Index).y >! nX = MapNpc(GetPlayerMap(Index)).Npc(NPCNum).x nY = MapNpc(GetPlayerMap(Index)).Npc(NPCNum).y >! '2D Pythagoras Dist = ((nX - pX) ^ 2) + ((nY - pY) ^ 2) >! Dist = ((Dist) ^ 1 / 2) / 32 'Check distance If Dist > Item(GetPlayerEquipment(Index, Weapon)).AttackRange Then Call PlayerMsg(Index, "They are too far away!", BrightRed) CanPlayerTargetNPC = False Exit Function Else CanPlayerTargetNPC = True End If >! 'Check Blocks If nX > pX Then Angle = Math.Tan((nX - pX) / ((nY - pY))) >! For LoopX = pX To nX If Math.Tan((nX - LoopX) / (nY - LoopY)) > Angle Then LoopY = LoopY + 1 End If 'Check the tile >! If Map(GetPlayerMap(Index)).Tile(LoopX, LoopY).Type = TILE_TYPE_BLOCKED Then CanPlayerTargetNPC = False Call PlayerMsg(Index, "There was a wall 1!", BrightRed) Exit Function End If Next >! ElseIf pX > nX Then Angle = Math.Tan((pX - nX) / (pY - nY)) >! For LoopX = pX To nX Step -1 If Math.Tan((nX - LoopX) / (nY - LoopY)) > Angle Then LoopY = LoopY - 1 End If 'Check the tile >! If Map(GetPlayerMap(Index)).Tile(LoopX, (LoopY + nX)).Type = TILE_TYPE_BLOCKED Then CanPlayerTargetNPC = False Call PlayerMsg(Index, "There was a wall 2!", BrightRed) Exit Function End If Next >! End If >! End Function
  21. Yeah I realized some issues with mine overnight. Looks like you may have sorted them out. I didnt think it would work without considering negatives but i se eyou used a math.tan function… so that might help LOL. Ill give it a try as soon as possible. Thanks!
  22. Here is a crack at pseudo-code for a Line of Sight. For those that need explaining:Line of sight means you can see your intended target. If you can't see them. You can't target them. What I am trying to do via code: 1:Get attacker and victim locations. 2:Get slope of angle from attacker to target. 3a:Move along X axis to target 3b:Move along Y axis when we hit slope >! Public Function CanTarget() 'finds the target locations, calculates slope, checks for blocks on tiles, cancels targeting if attacker shouldnt see victim. >! Dim AttackerX as Byte Dim AttackerY as Byte Dim VictimX as Byte Dim VictimY as Byte Dim SlopeX as Byte Dim SlopeY as Byte Dim i as Byte Dim TileX as Long Dim TileY as Long Dim Angle as Byte Dim n as Byte >! AttackerX = player().x AttackerY = Player().y >! If targetType = NPC VictimX = npc().x VictimY = npc().y Else VictimX = player().x VictimY = player().y End If >! 'get the slope SlopeX = VictimX - PlayerX SlopeY - VIctimY - PlayerY >! 'get how often we change on Y axis Angle = SlopeX / SlopeY 'Round Angle to nearest Integer. 'Set our Y axis counter up n = 0 >! If AttackerX < VictimX Then For i = AttackerX to VictimX Step +1 If AttackerY < VictimY then TileX = i n=n+1 If n => Angle then TileY = TileY+1 End If If Tile(TileX, TileY).Attribute = Block then CanTarget=False Exit Function End If End If If AttackerY > VictimY then TileX = i n=n+1 If n => Angle then TileY = TileY-1 End If If Tile(TileX, TileY).Attribute = Block then CanTarget=False Exit Function End If End If Next i End If >! If AttackerX > VictimX Then For i = AttackerX to VictimX Step -1 If AttackerY < VictimY then TileX = i n=n+1 If n => Angle then TileY = TileY+1 End If If Tile(TileX, TileY).Attribute = Block then CanTarget=False Exit Function End If End If If AttackerY > VictimY then TileX = i n=n+1 If n => Angle then TileY = TileY-1 End If If Tile(TileX, TileY).Attribute = Block then CanTarget=False Exit Function End If End If Next i End If If anyone has any input on if this might work or any obvious reason why it wont please let me know. I need to sleep before i try and code it. :P
  23. yay! im writing a function to check the spots from you to your target and if there is a block tile it cancels the attack. :) No more shooting/casting through walls! There are alot less loops and calculations with that little bugger.
  24. Does the following work in VB? For i = 10 to 1 Step -1 'do stuff Next i
×
×
  • Create New...