Welcome, guest! Please login or register.

    * Shoutbox

    RefreshHistory
    • stCky: idk man im just a chat bot
      August 22, 2017, 11:14:52 PM
    • symantec: is this forum
      August 22, 2017, 09:02:56 PM
    • symantec: what the fudge
      August 22, 2017, 09:02:52 PM
    • symantec: I just joined to download datmaker, the links are broken and a user named i nelson i has a fudgeing weird signature
      August 22, 2017, 08:59:33 PM
    • stCky: ur so cool and edgy
      August 22, 2017, 04:15:50 PM
    • Deathspirit: anyways, i'm un ip banned now.. but don't even want to be that at this point lmfao
      August 22, 2017, 01:58:14 PM
    • Deathspirit: now it's some sell out half leeched server :')
      August 22, 2017, 01:57:53 PM
    • Deathspirit: gf moparscape, was the best rsps community i've been on since 2006
      August 22, 2017, 01:57:31 PM
    • stCky: yeah, nah. it's cooked. [link] might help u with a backup or something idk man im just a chat bot
      August 22, 2017, 12:13:25 AM
    • flew420: I sure hope someone has a copy of the forum before it was recked
      August 21, 2017, 11:40:52 PM
    • flew420: O wow i see now, just read thru all the news articles. :(  i've been out of the game for a couple years so coming back to this shit is sad.
      August 21, 2017, 11:39:46 PM
    • flew420: Huh?
      August 21, 2017, 10:49:51 PM
    • stCky: got bought by a russian dude, he put a shitty rsps on it for donations, now no one cares
      August 21, 2017, 10:48:30 PM
    • flew420: I came on for some nostalgic reading in old classic development, and it only goes back to 2014 wtf.
      August 21, 2017, 10:43:09 PM
    • flew420: what happened to this site??
      August 21, 2017, 10:42:36 PM
    • Sean56:[link]
      August 21, 2017, 05:33:45 PM
    • kb010: how can i play? i downloaded the client and it doesnt open.
      August 21, 2017, 10:52:56 AM
    • wodkode: shut it down or fix it
      August 20, 2017, 10:11:28 PM
    • wodkode: dude i cant goto no links on here from google
      August 20, 2017, 10:11:13 PM
    • Dell: Greetings
      August 20, 2017, 11:56:30 AM

    Author Topic: 3D Java MORPG From Scratch.. Years Later *check it out*  (Read 3492 times)

    0 Members and 1 Guest are viewing this topic.

    Offlinebmc

    • Member
    • **
    • Posts: 13
    • Thanks: +0/-0
      • View Profile
    Welcome to the Aeonlite 3D MORPG development thread. I plan on publishing here often, with updates, and in the future with website / client download links.



    "Like Us" on Facebook to follow development progress!
    https://www.facebook.com/unsupportedbrowser

    Current Features:
    • OpenGL rendering with stable ~60fps, even on my garbage laptop
    • Performance mode option which effects most graphic settings (for people with garbage laptops)
    • Auto walk to destination (click terrain with left mouse button)
    • Distance based content processing/rendering
    • Primitive mobile entity "logic / ai"
    • Developer tools (cache packer, unpacker, etc)
    • Left click interaction with the digital world (click to walk, click to interact with mob, click to pickup item, click to use prop)
    • Mob texture recoloring on the fly..... (still needs a lot of revision to do what I need it to do, but it will happen, eventually..)
    • Interface open / close via UI button clicking .. (but dialogue is the only functional interface at the moment)
    • Multi player RENDERING - you can see other players and interact with them like a real game, but coordinates are client-sided, and could be exploited, but due to limited time I am keeping the design "fun" and do not care
    • "AI Player Bot" which is basically a fake login that sends random packets such as walking around the map.. (to test multiplayer rendering)
    • Static and dynamic game props are loaded from configuration files @ server startup, and the data is then sent to each client upon after logging in, and gets cached.... (I decided to store it server-sided so that I can use them for collision authentication in the future)
    Teaser:


    Old old photo of development, but it shows some custom made NPC models.. (fully animated)
    (click to show/hide)

    This project took 2-3 years of off and on programming here and there, with many large gaps in between out bursts due to encountering countless "impossible" complications during the initial development phase.. It is something that has been "rebuilt 100 times already" so be aware this thread will not be dramatically re-done anytime soon.. I waited to get to this point in development before I shared it on programming forums :cool:

    Some things I think should be mentioned before they are asked:

    * Why come to moparscape with this?
    I've been active in the RSPS community since November 2006, however, in the past few years not so much.. as I started with 2D game development, and worked my way into 3D very slowly. I am back to share my "masterpiece" and most long term "project", in the first forum that got me started with my programming journey.

    * What game engine are you using?
    None! I am using the jPCT 3D library for rendering, but it only goes as far as actually rendering models.. All game-related code, including the main loop, are all hand made by myself over the past couple of years.

    * Why not use a game engine?
    Where's the fun in that? I spent so much time (years) learning 3D mathematics and game design so that I could create a "legal rsps" style project for myself. Something long term I could devote my energy into and not worry about having any negative legal precautions.

    * How do you fund the project?
    Over the years I have had a handful of different "investors" over the years but eventually each one of them bailed on me, I assume because they didn't truly understand how much asset creation would cost, or how long it would take to build a project of this scale solo..
    That said, welcome to my project. I started here, and I find myself coming back to share my most valued creation. Anyways, currently I have no funding but I have 100s of prop models, and between 10-15 animated mobs - just enough for the basics  ;)

    I hope to get a lot of followers here on moparscape, and looking forward to seeing some of you even play in the future! Thanks for reading :)
    « Last Edit: June 28, 2014, 01:16:57 AM by bmc »
    3D Java MORPG From Scratch.. Years Later *check it out*

    Feel free to inbox for help with 2D / 3D Java game development. Always glad to help a beginner!!

    OfflineLimits

    • Member
    • ****
    • Posts: 2,190
    • Thanks: +0/-0
      • View Profile
    Re: 3D MORPG
    « Reply #1 on: June 27, 2014, 10:55:49 PM »
    Looks great man! Just don't make it too similar to runescape or Jagex will get on your ass especially if you make money off of it.

    Offlinebmc

    • Member
    • **
    • Posts: 13
    • Thanks: +0/-0
      • View Profile
    Re: 3D MORPG
    « Reply #2 on: June 27, 2014, 11:20:58 PM »
    Looks great man! Just don't make it too similar to runescape or Jagex will get on your ass especially if you make money off of it.

    Thank you!

    Yes I agree. Although the game is heavily inspired by RuneScape in some ways, the entire game world feels unique. I personally spent countless amounts of time fine tuning the camera, player controls, movement system, physics, and general core functionality before it felt exactly how I wanted it to feel..

    A major (and good example) difference is nothing is restricted to tiles. There is a "gravity" system, and where props are snapped to the terrain surface, mobs are constantly dropping to the ground (until they become attached). You can walk virtually anywhere, and collision detection is based on model dimensions - opposed to tile space.
    Actually.. Tiles do not exist anywhere in the code anywhere because content felt too restricted :rolleyes: .. Instead I store entity positions with x/y/z values suitable for 3D world space :)
    3D Java MORPG From Scratch.. Years Later *check it out*

    Feel free to inbox for help with 2D / 3D Java game development. Always glad to help a beginner!!


    OfflineLimits

    • Member
    • ****
    • Posts: 2,190
    • Thanks: +0/-0
      • View Profile
    Re: 3D MORPG
    « Reply #3 on: June 28, 2014, 12:02:55 AM »
    Looks great man! Just don't make it too similar to runescape or Jagex will get on your ass especially if you make money off of it.

    Thank you!

    Yes I agree. Although the game is heavily inspired by RuneScape in some ways, the entire game world feels unique. I personally spent countless amounts of time fine tuning the camera, player controls, movement system, physics, and general core functionality before it felt exactly how I wanted it to feel..

    A major (and good example) difference is nothing is restricted to tiles. There is a "gravity" system, and where props are snapped to the terrain surface, mobs are constantly dropping to the ground (until they become attached). You can walk virtually anywhere, and collision detection is based on model dimensions - opposed to tile space.
    Actually.. Tiles do not exist anywhere in the code anywhere because content felt too restricted :rolleyes: .. Instead I store entity positions with x/y/z values suitable for 3D world space :)


    So you've taken into consideration the thickness of the entity or objects? Because XYZ is a point not a region. And this 'gravity' thing sounds pretty neat.

    Offlinebmc

    • Member
    • **
    • Posts: 13
    • Thanks: +0/-0
      • View Profile
    Re: 3D MORPG
    « Reply #4 on: June 28, 2014, 12:10:40 AM »
    Looks great man! Just don't make it too similar to runescape or Jagex will get on your ass especially if you make money off of it.

    Thank you!

    Yes I agree. Although the game is heavily inspired by RuneScape in some ways, the entire game world feels unique. I personally spent countless amounts of time fine tuning the camera, player controls, movement system, physics, and general core functionality before it felt exactly how I wanted it to feel..

    A major (and good example) difference is nothing is restricted to tiles. There is a "gravity" system, and where props are snapped to the terrain surface, mobs are constantly dropping to the ground (until they become attached). You can walk virtually anywhere, and collision detection is based on model dimensions - opposed to tile space.
    Actually.. Tiles do not exist anywhere in the code anywhere because content felt too restricted :rolleyes: .. Instead I store entity positions with x/y/z values suitable for 3D world space :)


    So you've taken into consideration the thickness of the entity or objects? Because XYZ is a point not a region. And this 'gravity' thing sounds pretty neat.

    Yes, collision detection is based on model size.

    Static and dynamic props within 2000 world units will update every 6 seconds (10x / min).

    Other entities are a slightly more defined when it comes to visibility / processing, and the render distance is much shorter (500 world units - which is about "1 region" in dimensions).

    Yes the game has a region system, however, it is not directly tied into other systems such as rendering. I prefer a distance based configuration than chunk based. The protocol is reaction-based, opposed to a timed packet dispatch.

    Gravity is very basic.. it is either dropping you to the ground, or automatically clamping you to the ground. I prefer to keep steady dropping enabled for active mobs for a more realistic feel to movement.
    3D Java MORPG From Scratch.. Years Later *check it out*

    Feel free to inbox for help with 2D / 3D Java game development. Always glad to help a beginner!!

    OfflineLimits

    • Member
    • ****
    • Posts: 2,190
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #5 on: June 28, 2014, 09:53:49 AM »
    So is there jumping and falling?

    OfflineRSCShadow

    • Member
    • ****
    • Posts: 2,024
    • Thanks: +0/-0
      • View Profile
    Re: 3D MORPG
    « Reply #6 on: June 28, 2014, 12:10:48 PM »
    Looks great man! Just don't make it too similar to runescape or Jagex will get on your ass especially if you make money off of it.
    He could make the exact same game as RuneScape if he wanted to and Jagex couldn't do shit, so long as he doesn't use any of their assets. You can't copyright game mechanics. That isn't to say he should make a RuneScape clone or anything though.

    OfflineLimits

    • Member
    • ****
    • Posts: 2,190
    • Thanks: +0/-0
      • View Profile
    Re: 3D MORPG
    « Reply #7 on: June 28, 2014, 01:01:59 PM »
    Looks great man! Just don't make it too similar to runescape or Jagex will get on your ass especially if you make money off of it.
    He could make the exact same game as RuneScape if he wanted to and Jagex couldn't do shit, so long as he doesn't use any of their assets. You can't copyright game mechanics. That isn't to say he should make a RuneScape clone or anything though.


    You can copyright ideas. Also I believe it was said on this site that "You can recreate all of the models from scratch, you can rewrite their client by yourself, and they can still sue you.


    And like I said they CAN copyright ideas.

    OfflineRSCShadow

    • Member
    • ****
    • Posts: 2,024
    • Thanks: +0/-0
      • View Profile
    Re: 3D MORPG
    « Reply #8 on: June 28, 2014, 01:52:52 PM »

    Offlinebmc

    • Member
    • **
    • Posts: 13
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #9 on: June 28, 2014, 08:23:30 PM »
    Ideally, some day in the way distant future I will be able to offer a free gaming service similar to MineCraft, where people can modify their own game server, and players would download a universal client. (Map data and entity data would be downloaded prior to server login.)
    I am thinking that a jar-based plugin system would be suitable for server modders to configure an alternative game play setup if they're up for some basic programming.
    Maybe I could create somewhat of a toplist page, and forum.. Hopefully something a clever server owner can profit from if they're educated enough to create minigame plugins and such ;)

    A small but generous bonus to letting other people host private game servers is that the current terrain system supports two extremely simple to use map formats.. (heightmap image, or .obj model) - both which can be simply googled and saved into the "host_data" folder.
    The 2 primary formats:
    1) (.obj model format) TerrainGen map editor tool, with specific terrain dimensions to fit the client efficiently...
    2) (single image heightmap) fun fact: on google you can find real world landscape heightmaps.. - tbh I'll probably switch solely to heightmaps because TerrainGen also has an "export to height map" option......

    Edit: Oh yeah.. I forgot to mention that it's simple to spawn default world entities. Very similar to the RSPS format (.cfg) In which you can spawn an NPC with a single line of text.. ex: type, x, y, z..
    Code: [Select]
    1, 1000, -50, 555 // npc name or comment here
    And prop data is handled the same way.. such as spawning a building, a bank chest, a tree, portal etc. the server dispatches this data after the login request is handled and validated..
    « Last Edit: June 29, 2014, 01:36:52 AM by bmc »
    3D Java MORPG From Scratch.. Years Later *check it out*

    Feel free to inbox for help with 2D / 3D Java game development. Always glad to help a beginner!!

    OfflineLimits

    • Member
    • ****
    • Posts: 2,190
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #10 on: June 28, 2014, 10:41:24 PM »
    I like the way you do things honestly. Also, I really want to keep computer programming and game creation something that isn't able to be done easily. If people make things that make games very easy to make, none of us will make money in the future (that is if we all head into game development as a career). What you need to do is build from scratch a game, and write your code so well that things become easy to add because game engines are really demolishing the talent of a real game developer.

    Offlinebmc

    • Member
    • **
    • Posts: 13
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #11 on: June 29, 2014, 01:39:26 AM »
    I like the way you do things honestly. Also, I really want to keep computer programming and game creation something that isn't able to be done easily. If people make things that make games very easy to make, none of us will make money in the future (that is if we all head into game development as a career). What you need to do is build from scratch a game, and write your code so well that things become easy to add because game engines are really demolishing the talent of a real game developer.

    Thanks again.. and since I started building the server, it has been designed in a way that would be easy to jar the core, and still be able to add on to.
    As for dynamic client settings, that wouldn't happen until way later on because it's too far off task, but custom maps and easy to configure graphic settings would be easily do-able.
    3D Java MORPG From Scratch.. Years Later *check it out*

    Feel free to inbox for help with 2D / 3D Java game development. Always glad to help a beginner!!

    Offlinewildskiller

    • Member
    • ****
    • Posts: 1,434
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #12 on: June 30, 2014, 06:25:50 PM »
    How is it that you are barely rendering anything but you still take up 400MB+ worth of RAM? That's bad memory management.

    OfflineRSCShadow

    • Member
    • ****
    • Posts: 2,024
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #13 on: June 30, 2014, 08:03:41 PM »
    How is it that you are barely rendering anything but you still take up 400MB+ worth of RAM? That's bad memory management.
    Why don't you take a look at how much ram the RSC client uses after an hour?

    Offlinebmc

    • Member
    • **
    • Posts: 13
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #14 on: July 01, 2014, 04:59:59 AM »
    How is it that you are barely rendering anything but you still take up 400MB+ worth of RAM? That's bad memory management.

    400-600MB is about as much as it requires not matter what is being processed.. Memory management is excellent for what is actually happening in the digital world. In fact, I can log in with at least 100 "ai players" (login bots with random movement packets) and memory usage doesn't increase too much... (because models are cloned, and only stored in the VM one time)
    The reason it uses so much memory in the first place is due to the large amount of data that has to be stored, eg: FULL terrain, textures, and ~30 models. Why store the full terrain? Because I don't want loading screens during game play, and honestly, I want distance based rendering opposed to breaking the map into chunks (regions). The feel of being able to explore an entire digital world without loading screens makes me very happy - and in fact, you can teleport anywhere and there is no delay - which will be nice when I get around to the PvP end of the game.
    In the distant future, whenever I get around to moving ALL of the client-side features to the server, and dispatch the data instead, memory usage will be significantly lower anyways. Gravity and collision are 2 prime examples of things that, once relocated, would create a dramatic change on the user end. I've actually tested the client without gravity and collision, and it uses around 30% less memory, so in the future it only gets better - but for now I am keeping development simple and realistic considering it's a 1 man team for such a large scale creation :)
    IMHO it's 2014 anyways, and if somebody's computer wont handle up to 1G RAM, then they shouldn't be playing 3D games ;D

    On a different note, I plan on optimizing some graphics soon for better aesthetics. First the UI, then the terrain texturing / blending. Once completed, I suppose I'll start to port things to the server end of it, just to make everybody extra happy lol....
    « Last Edit: July 01, 2014, 05:04:18 AM by bmc »
    3D Java MORPG From Scratch.. Years Later *check it out*

    Feel free to inbox for help with 2D / 3D Java game development. Always glad to help a beginner!!

    OfflineTerraforming

    • Member
    • **
    • Posts: 78
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #15 on: July 01, 2014, 07:48:50 AM »
    Good job mate, looks sick.

    OfflineArrav

    • Member
    • **
    • Posts: 47
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #16 on: July 01, 2014, 12:14:49 PM »
    I used to play this when it was 2d and had very little amounts of content. Atm it looks good but the terrain has too much dof/blending/blurr w.e you want to call it. It's really hard to see the textures. Also the fog could use some work, also the models specular doesn't fit with the terrain, probably use a flat diffusion on them to match terrain detail for now. If you could get anti-aliasing, that would make my eyes burn a little less. Though I have no expertise on doing what I have mentioned, I do know what I am talking about as I see this detail all over runescape..

    Offlinebmc

    • Member
    • **
    • Posts: 13
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #17 on: July 01, 2014, 01:25:34 PM »
    I used to play this when it was 2d and had very little amounts of content. Atm it looks good but the terrain has too much dof/blending/blurr w.e you want to call it. It's really hard to see the textures. Also the fog could use some work, also the models specular doesn't fit with the terrain, probably use a flat diffusion on them to match terrain detail for now. If you could get anti-aliasing, that would make my eyes burn a little less. Though I have no expertise on doing what I have mentioned, I do know what I am talking about as I see this detail all over runescape..

    Awesome to hear you played the old 2D version! And yes, currently I am focusing on making the terrain look better. I haven't had feedback since I started really, so it's great to get some from this community - and it's been pointed out that it looks like shit (as well as the UI) lol.

    Based on local machine settings the client will choose between standard gl rendering OR gl anti aliasing x4 - but based on my craptop, the client is always configured to use the lowest possible graphic settings :o
    People who can afford nice hardware will have a much more aesthetic game in front of them, with features including but not limited to: a moving sky dome, sun model, sun light source, and overall better looks with the 3D world :)

    I'll have to let somebody with a solid machine logic and take a few pics, or maybe a video.. a video would be great tbh. Any volunteers?

    Update:
    * Deleted old terrain / region system and created a standalone loader that loads heightmap images from the cache
    * Server now manages a "3D background world" for game logic such as real-time gravity and collision validation.. ( strong gravity is no longer stressful on the client ;) )
    * New server protocol layout (still basic, following KISS principle for now, don't harass me about it)
    Code: [Select]
    > new protocol structure:
    --> server (realm) logic updated every 600ms (gravity, stat regeneration, etc - all working in multi player)
    --> server (protocol) dispatch every 250ms (4x per second)
    --> client reads incoming packets non-stop (running on separate thread with a 10ms sleep)
    note: client rendering and updating is still executed on a set value of 30x or 60x per second based on Settings..
    * Multi-player chatbox with world chat packets / console command parsing
    * All local client content deleted, so now what you see is what the server feeds you.. This build is much healthier, but now there are only the basics: prop rendering, player rendering, movement, and the User Interface..
    * Server controlled teleporting or forced movement updates
    * Death event handled server side (tested via command "/die" at the moment - restores all stats and respawns player at center of world map)

    TODO
    * Polish up current features and slowly re-build the content foundation (almost done with this one already tbh)
    * Convert client-side "primitive mob following" methods to work server-sided instead..
    * Unarmed combat (kick attack) based on stamina (available in case you have 0 mana or arrows)
    * Projectile system with server-side collision validation (for arrows and spells used in PvP)
    * Left click PvP combat system.. (polled attacks, with hot keys for potion consumption)
    * Npc rendering and updating
    * Mob vs Mob combat update (PvP + PvN + NvN support)
    * Familiar that follows you around.. (probably going to require funds for new model creation unless I can get creative.. it costs me $65 USD for a new custom made fully animated model)

    I've got a lot more to do but I had some free time today and managed to knock out a huge set of much needed tasks.
    « Last Edit: July 12, 2014, 01:07:54 AM by bmc »
    3D Java MORPG From Scratch.. Years Later *check it out*

    Feel free to inbox for help with 2D / 3D Java game development. Always glad to help a beginner!!

    OfflineiDragoniite

    • Member
    • **
    • Posts: 7
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #18 on: August 19, 2014, 01:53:52 AM »
    Any news on what you're currently working on? I'm quite interested in this project

    OfflineTree

    • Member
    • ****
    • Posts: 2,638
    • Thanks: +0/-0
      • View Profile
    Re: 3D Java MORPG From Scratch.. Years Later *check it out*
    « Reply #19 on: August 19, 2014, 08:49:44 PM »
    I like the way you do things honestly. Also, I really want to keep computer programming and game creation something that isn't able to be done easily. If people make things that make games very easy to make, none of us will make money in the future (that is if we all head into game development as a career). What you need to do is build from scratch a game, and write your code so well that things become easy to add because game engines are really demolishing the talent of a real game developer.

    Do you purposely spew rubbish?
    Quote
    <_^_> this community has really collapsed
    <_^_> it is like a shitty version of friendster for washed up nerds

     

    Copyright © 2017 MoparScape. All rights reserved.
    Powered by SMFPacks SEO Pro Mod |
    SimplePortal 2.3.5 © 2008-2012, SimplePortal