Eclipse Renewal Suggestions

Eclipse Renewal is supposed to have a lot of options for developers rather than features they can’t get rid of, this way you don’t need to actually know how to program (it’s still recommended that you do).

As more suggestions are made, I’ll add them to this post so they are more easily found.



Suggested Features:

  • Anti cheat
  • Auto move player when click on map
  • Better NPC AI + Mechanics for bosses
  • Character creator (Races, hair, skin etc)
  • Choose what stat determines damage for spells and weapons
  • Choose if a projectile goes straight or at the target
  • Controller support
  • Items to be optionally animated in inventory and whilst equip.
  • Mounts
  • Party queuing for dungeons/bosses/quests
  • Player shops/markets
  • PVP queuing (join a Que when full everyone’s is teleported)
  • Randomised dungeons
  • Randomized items based on pre-decided possible stats
  • Spell/weapon progress/unlock new spells as you use one more
  • Talent system

Planned Features:

  • Active effects (of spells and items) shown on the screen
  • Buffs/debuff + icons w/ hover over
  • Chest editor
  • Chest map attribute (multiple chest types)
  • Class editor
  • Clan/guild wars (warring clans don’t get PK title when killing other clan)
  • Delete/reset map and other things in the editor
  • Display the weather in the editor so you know what it will look like
  • Get tileset from tile (like an eye dropper tool)
  • Instance maps
  • Map property to stop logout
  • More weather options
  • Option to hide the GUI
  • Option to move the GUI (have a server option to lock the GUI)
  • Pets that are useful (I.E have their own backpack)
  • Preview when placing tiles
  • Seamless maps
  • Server settable inventory, equipment, etc.
  • Skills editor
  • Weather affecting range (either having a modifier or set/max range). This will affect NPC range, and player draw range of other players/NPCs)

Added Features (From this thread):

  • Adjustable screen size
  • Can’t warp mappers who have the editor open
  • Change-able GUI
  • Favorite tilesets
  • Real crafting with crafting menus
  • Server option to allow for resizeable screens
  • Server option to set the client size
  • Server option to allow fullscreen (stretched and not)

Not Planned Features (Reason will be given after the feature):

  • 8 dir movement (too many if statements for my liking)
  • Turned based combat (too many if statements for my liking)


Please don’t suggest things that have already been suggested (like the post instead) or post sarcastic suggestions.

  • Optıons for Screensıze
  • Bıgger Map Options ( camera should follow the player )
  • New gui …

I ll update this post whenever I find a new suggestion

  • Buff & Debuff?

Adding click to move takes about 2 mins…

Buffs/debuff + icons w/ hover over
Real crafting with crafting menus
Mounts
Better NPC AI + Mechanics for bosses
Randomised dungeons
Anti cheat
Party queuing for dungeons/bosses/quests
PVP queuing (join a Que when full everyone’s is teleported)
Pets that are useful (I.E have their own backpack)
Items to be optionally animated in inventory and whilst equip.

controller support
Talent system
Character creator (Races, hair, skin etc)

-Get rid of the GDI crap for the game menus and render everything in DX8
-Switch to DX9
-swap out FMOD to FMODex

@‘Lavos’:

-Get rid of the GDI crap for the game menus and render everything in DX8
-Switch to DX9
-swap out FMOD to FMODex

For what it’s worth, it’ll be upgraded to DX11 when it’s converted to .NET

That makes me feel better XD I’ve debated on switching to dx9 for awhile but didn’t want to change all the code since I had other things to do. As for the FMOD to FMODex, from what I googled, you have to pay for FMODex? If so then no. The GDI might be do-able but we’ll see if it’ll fit in this update or if it has to wait for another one (time frame and all).

@'Mohenjo:

That makes me feel better XD I’ve debated on switching to dx9 for awhile but didn’t want to change all the code since I had other things to do. As for the FMOD to FMODex, from what I googled, you have to pay for FMODex? If so then no. The GDI might be do-able but we’ll see if it’ll fit in this update or if it has to wait for another one (time frame and all).

I’ve made a wrapper for it, use it if you think you can replace the old FMOD.
Download: CLICK HERE

Alright, I’ll give it a look

One thing I can think of that every game needs in some form is instanced maps.

@mohenjo-daro Add shadow also please 🙂

@giukko Already added in 1.9 (I’ll probably end up changing lighting and shadows in a later update) https://www.eclipseorigins.com/topic/86342/er-1-9-0-upcoming

@mohenjo-daro said in Eclipse Renewal Suggestions:

I’ll probably end up changing lighting and shadows in a later update

Great!! Thanks 🙂

I tryed add shadows and client works well, but when I’m saving updates at the map the server crash. Any suggestion? Here is the code which Visual Basic highlight in debug: CopyMemory ByVal VarPtr(Resource(ResourceNum)), ByVal VarPtr(ResourceData(0)), ResourceSize

Could you help me to fix this?

The shadows in that image shouldn’t have anything to do with the server. It should be 100% client side. All shadow code AE and ER 1.9 use does is takes the sprite, changes the color to black, makes it transparent, and renders it (it does some fancy rotation and resizing stuff).

The only error you should get is a DX8 error.

However, you could have each NPC and resource be assigned a shadow, but that would need to be saved and all NPC and resource files deleted. This isn’t that good of a method to use.

Ah ok, because I simply searched on Andur Engine all pieces of code and pasted on ER in the right position eheh

@giukko Here’s hte code if you want to give it a test that badly lol

Before

RenderTexture Tex_Character(Sprite), X, Y, rec.Left, rec.Top, rec.Right - rec.Left, rec.Bottom - rec.Top, rec.Right - rec.Left, rec.Bottom - rec.Top, D3DColorRGBA(255, 255, 255, 255)

Add

Call DrawShadow(X, Y, Sprite, rec)

Then Add

Public Sub DrawShadow(ByVal X As Long, ByVal Y As Long, ByVal Sprite As Long, rec As RECT)
    Dim degrees As Long, heightPercent As Double, widthPercent As Double, yOffset As Double, xOffset As Double
    Dim Height As Long, tempHeight As Long, tempWidth As Long, Width As Long
    Dim maxHeight As Long, minHeightPercent As Long, maxHeightPercent As Long
    Dim maxWidth As Long, minWidthPercent As Long, maxWidthPercent As Long
    Dim rad As Double
    
'    tempVal = tempVal + 1
'    If tempVal = 90 * 5 + 1 Then tempVal = 0
    
    ' Constants to Get Out of the Way
    Height = rec.Bottom - rec.Top
    Width = rec.Right - rec.Left
    
    ' Set Variables
    degrees = 45 ' tempVal * 0.2 ' 45 ' Change this value to change the rotation
    rad = degrees * DegreeToRad
    
    ' Height Stretching
    minHeightPercent = 60 ' Change this value to make the shadow be shorter at noon/0 degree rotation
    maxHeightPercent = 300 ' Change this value to make the shadow be taller at sundown/90 degree rotation
    maxHeight = Height * (minHeightPercent * 0.01) ' num * .001 is the percent of the height
    
    heightPercent = Cos(rad)
    If heightPercent = 0 Then
        heightPercent = maxHeightPercent
    Else
        xOffset = Sin(rad) * ((Height - maxHeight) * 0.5)
        heightPercent = (((maxHeight / heightPercent) - xOffset) / Height) * 100
    End If
    
    If heightPercent < minHeightPercent Then heightPercent = minHeightPercent
    If heightPercent > maxHeightPercent Then heightPercent = maxHeightPercent
    
    ' Width Stretching
    minWidthPercent = 70 ' Change this value to make the shadow be thicker at noon/0 degree rotation
    maxWidthPercent = 100 ' Change this value to make the shadow be thinner at sundown/90 degree rotation
    maxWidth = Width * (minWidthPercent * 0.01) ' num * .001 is the percent of the height

    widthPercent = Sin(rad)
    If widthPercent = 0 Then
        widthPercent = maxWidthPercent
    Else
        yOffset = 0 ' Sin(rad) * ((width - maxWidth) * 0.5)
        widthPercent = (((maxWidth / widthPercent) - yOffset) / Width) * 100
    End If

    If widthPercent < minWidthPercent Then widthPercent = minWidthPercent
    If widthPercent > maxWidthPercent Then widthPercent = maxWidthPercent
    
    ' Set Size
    tempHeight = Height * (1 - (heightPercent * 0.01))
    tempWidth = Width * (1 - (widthPercent * 0.01))
    
    ' X and Y Offsets Based on Rotation
    yOffset = (Cos(rad) * ((Height - tempHeight) * 0.5)) - ((Height - tempHeight) * 0.5) + (Sin(rad) * ((Width - tempWidth) * 0.2))
    xOffset = Sin(rad) * ((Height - tempHeight) * 0.5)
    
    RenderTexture Tex_Character(Sprite), X + (tempWidth * 0.5) + xOffset, Y + tempHeight - yOffset, rec.Left, rec.Top, Width - tempWidth, Height - tempHeight, Width, Height, D3DColorRGBA(0, 0, 0, 100), degrees
    
End Sub

And add this to modConstants

' Graphics
Public Const Pi As Double = 3.14159265358979
Public Const DegreeToRad As Double = Pi / 180 ' 0.0174533

@mohenjo-daro Eheh great Mohenjo I try now! :))) Thanks!!!

Doesnt works, the game start, I see shadows and character can moves, but when I put something from the map editor and I save, the server crash 😞 Dont know

Note: I done this from a fresh source code following your instructions and placing also this required piece of code in costants:

  • ’ Graphics
    Public Const Pi As Double = 3.14159265358979
    Public Const DegreeToRad As Double = Pi / 180 ’ 0.0174533
Log in to reply