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

NextEraGaming

Members
  • Posts

    89
  • Joined

  • Last visited

    Never

Posts posted by NextEraGaming

  1. Was just wondering: Would it be possible to write a VB program that utilizes a file joining program to join my files into one file, compresses them, and unjoins them on delivery? Sounds pretty badass.
  2. Nope there's no possible way you can edit the source(which is required if you want to edit pretty much anything to do with how the program does just about anything) without VB6\. Just torrent it dude.
  3. But thats the thing Robin, it only displays the sprite as a 32x32 if i do it this way:

    With rec
            .top = spritetop * (DDSD_Character(Sprite).lHeight / 1)
            .Bottom = .top + (DDSD_Character(Sprite).lHeight / 1)
            .left = Anim * (DDSD_Character(Sprite).lWidth / 12)
            .Right = .left + (DDSD_Character(Sprite).lWidth / 12)
        End With

    Is that what you mean by the position code? Even when I set it to the above it reads it as four. =(
  4. Aight I edited the software to read the sprites correctly, but the movement is still reding s if it were still in RMXP format(four animations insted of three)

    Here is my BltPlayer(which is almost identical to my BltNPC):

    ```
    Public Sub BltPlayer(ByVal Index As Long)
    Dim Anim As Byte, i As Long, X As Long, y As Long
    Dim Sprite As Long, spriteleft As Long
    Dim rec As DxVBLib.RECT
    Dim attackspeed As Long

        ' If debug mode, handle error then exit out
        If Options.Debug = 1 Then On Error GoTo errorhandler

        Sprite = GetPlayerSprite(Index)

        If Sprite < 1 Or Sprite > NumCharacters Then Exit Sub

        CharacterTimer(Sprite) = GetTickCount + SurfaceTimerMax

        If DDS_Character(Sprite) Is Nothing Then
            Call InitDDSurf("characters\" & Sprite, DDSD_Character(Sprite), DDS_Character(Sprite))
        End If

        ' speed from weapon
        If GetPlayerEquipment(Index, Weapon) > 0 Then
            attackspeed = Item(GetPlayerEquipment(Index, Weapon)).Speed
        Else
            attackspeed = 1000
        End If

        ' Reset frame
        If Player(Index).Step = 3 Then
            Anim = 0
        ElseIf Player(Index).Step = 1 Then
            Anim = 2
        End If

        ' Check for attacking animation
        If Player(Index).AttackTimer + (attackspeed / 2) > GetTickCount Then
            If Player(Index).Attacking = 1 Then
                Anim = 3
            End If
        Else
            ' If not attacking, walk normally
            Select Case GetPlayerDir(Index)
                Case DIR_UP
                    If (Player(Index).YOffset > 8) Then Anim = Player(Index).Step
                Case DIR_DOWN
                    If (Player(Index).YOffset < -8) Then Anim = Player(Index).Step
                Case DIR_LEFT
                    If (Player(Index).XOffset > 8) Then Anim = Player(Index).Step
                Case DIR_RIGHT
                    If (Player(Index).XOffset < -8) Then Anim = Player(Index).Step
            End Select
        End If

        ' Check to see if we want to stop making him attack
        With Player(Index)
            If .AttackTimer + attackspeed < GetTickCount Then
                .Attacking = 0
                .AttackTimer = 0
            End If
        End With

        ' Set the left
        Select Case GetPlayerDir(Index)
            Case DIR_UP
                spriteleft = 0
            Case DIR_RIGHT
                spriteleft = 3
            Case DIR_DOWN
                spriteleft = 1
            Case DIR_LEFT
                spriteleft = 2
        End Select

        With rec
            .top = 0
            .Bottom = DDSD_Character(Sprite).lHeight
            .left = (spriteleft * 3 + Anim) * (DDSD_Character(Sprite).lWidth / 12)
            .Right = .left + (DDSD_Character(Sprite).lWidth / 12)
        End With

        ' Calculate the X
        X = GetPlayerX(Index) * PIC_X + Player(Index).XOffset - ((DDSD_Character(Sprite).lWidth / 12 - 32) / 2)

        ' Is the player's height more than 32..?
        If (DDSD_Character(Sprite).lHeight) > 32 Then
            ' Create a 32 pixel offset for larger sprites
            y = GetPlayerY(Index) * PIC_Y + Player(Index).YOffset - ((DDSD_Character(Sprite).lHeight) - 32)
        Else
            ' Proceed as normal
            y = GetPlayerY(Index) * PIC_Y + Player(Index).YOffset
        End If

        ' render the actual sprite
        Call BltSprite(Sprite, X, y, rec)

        ' check for paperdolling
        For i = 1 To Equipment.Equipment_Count - 1
            If GetPlayerEquipment(Index, i) > 0 Then
                If Item(GetPlayerEquipment(Index, i)).Paperdoll > 0 Then
                    Call BltPaperdoll(X, y, Item(GetPlayerEquipment(Index, i)).Paperdoll, Anim, spriteleft)
                End If
            End If
        Next

        ' Error handler
        Exit Sub
    errorhandler:
        HandleError "BltPlayer", "modDirectDraw7", Err.Number, Err.Description, Err.Source, Err.HelpContext
        Err.Clear
        Exit Sub
    End Sub

    Public Sub BltNpc(ByVal MapNpcNum As Long)
    Dim Anim As Byte, i As Long, X As Long, y As Long, Sprite As Long, spriteleft As Long
    Dim rec As DxVBLib.RECT
    Dim attackspeed As Long

        ' If debug mode, handle error then exit out
        If Options.Debug = 1 Then On Error GoTo errorhandler

        If MapNpc(MapNpcNum).num = 0 Then Exit Sub ' no npc set

        Sprite = Npc(MapNpc(MapNpcNum).num).Sprite

        If Sprite < 1 Or Sprite > NumCharacters Then Exit Sub

        CharacterTimer(Sprite) = GetTickCount + SurfaceTimerMax

        If DDS_Character(Sprite) Is Nothing Then
            Call InitDDSurf("characters\" & Sprite, DDSD_Character(Sprite), DDS_Character(Sprite))
        End If

        attackspeed = 1000

        ' Reset frame
        Anim = 0
        ' Check for attacking animation
        If MapNpc(MapNpcNum).AttackTimer + (attackspeed / 2) > GetTickCount Then
            If MapNpc(MapNpcNum).Attacking = 1 Then
                Anim = 3
            End If
        Else
            ' If not attacking, walk normally
            Select Case MapNpc(MapNpcNum).Dir
                Case DIR_UP
                    If (MapNpc(MapNpcNum).YOffset > 8) Then Anim = MapNpc(MapNpcNum).Step
                Case DIR_DOWN
                    If (MapNpc(MapNpcNum).YOffset < -8) Then Anim = MapNpc(MapNpcNum).Step
                Case DIR_LEFT
                    If (MapNpc(MapNpcNum).XOffset > 8) Then Anim = MapNpc(MapNpcNum).Step
                Case DIR_RIGHT
                    If (MapNpc(MapNpcNum).XOffset < -8) Then Anim = MapNpc(MapNpcNum).Step
            End Select
        End If

        ' Check to see if we want to stop making him attack
        With MapNpc(MapNpcNum)
            If .AttackTimer + attackspeed < GetTickCount Then
                .Attacking = 0
                .AttackTimer = 0
            End If
        End With

        ' Set the left
        Select Case MapNpc(MapNpcNum).Dir
            Case DIR_UP
                spriteleft = 0
            Case DIR_RIGHT
                spriteleft = 3
            Case DIR_DOWN
                spriteleft = 1
            Case DIR_LEFT
                spriteleft = 2
        End Select

        With rec
            .top = 0
            .Bottom = DDSD_Character(Sprite).lHeight
            .left = (spriteleft * 3 + Anim) * (DDSD_Character(Sprite).lWidth / 12)
            .Right = .left + (DDSD_Character(Sprite).lWidth / 12)
        End With

      ' Calculate the X
        X = MapNpc(MapNpcNum).X * PIC_X + MapNpc(MapNpcNum).XOffset - ((DDSD_Character(Sprite).lWidth / 12 - 32) / 2)

        ' Is the player's height more than 32..?
        If (DDSD_Character(Sprite).lHeight) > 32 Then
            ' Create a 32 pixel offset for larger sprites
            y = MapNpc(MapNpcNum).y * PIC_Y + MapNpc(MapNpcNum).YOffset - ((DDSD_Character(Sprite).lHeight) - 32)
        Else
            ' Proceed as normal
            y = MapNpc(MapNpcNum).y * PIC_Y + MapNpc(MapNpcNum).YOffset
        End If

        Call BltSprite(Sprite, X, y, rec)

        ' Error handler
        Exit Sub
    errorhandler:
        HandleError "BltNpc", "modDirectDraw7", Err.Number, Err.Description, Err.Source, Err.HelpContext
        Err.Clear
        Exit Sub
    End Sub
    ```
  5. Yo. When I try to use 32x32 sprites, I get a strip of nonsensical graphic gibberish as shown below:

    [![](http://www.freemmorpgmaker.com/files/imagehost/pics/782259c3dce5499a359315cfe80304f2.png)](http://www.freemmorpgmaker.com/files/imagehost/#782259c3dce5499a359315cfe80304f2.png)
  6. I honestly don't understand why everyone keeps knocking America even though most have NEVER BEEN HERE…in this article, I see a repetition of "corrupted media" and someone even admitted that damn near all media is biased and corrupted. So if you've never visited America and criticize it, did you not form your opinion from the MEDIA?

    I understand America has MANY flaws, but that doesn't mean your country is any better as ALL things in life have their pros and cons.

    -Deity
  7. Is balance not an essential part of any RPG? For instance, what if in Oblivion you could farm mudcrabs for blades, destruction and block EXP until 100? What would be the point in going out to annihilate Umbra or Mehrunez? The way Bethesda balanced Oblivion was by scaling monster spawns to the level of the PC, solving the problem of the previous TES, Morrowind, which allowed players to rest for an hour, then go back to a Dremora spawn(whose level was higher than yours) and kill him, some Scamps and his Hunger girlfriend until you reach the skill cap or level up(whichever comes first)

    I understand this sort of balancing system is irrelevant to the conversation, seeing as Eclipse doesn't have these sort of problems, but the point is, how can I give the Player incentive to go out on a perilous adventure in one of my many painstakingly crafted dungeons?
×
×
  • Create New...