Thread: RuneSuite

Page 3 of 5 FirstFirst 12345 LastLast
Results 21 to 30 of 43
  1. #21  
    I heal clients


    Join Date
    Apr 2013
    Posts
    680
    Thanks given
    65
    Thanks received
    239
    Rep Power
    108
    Quote Originally Posted by Im Melvin View Post
    Bro honestly, how long do you this this will take you? This is massively extensive.
    It won't take me much time, I was busy when I have started it but now I am completely free for my own projects also most of the stuff mentioned are easy to achieve if the base engine is done, since they are almost all about rendering models in a specific layout. but if it would take me much time, I would get some people to work on it with me.

    ChangeLog:
    Code:
    - Finished ObjType decoding/encoding (100% accurate naming, also supports up to 883)
    - Finished the CacheStore
    - Finished the Index (the meta table for Archive, or also known as ReferenceTable)
    - Worked more on the terrain rendering (scaling up terrain up to size of 512 per tile (512 * 64), which makes it easier to adapt locations, can be scaled down with just a constant).
    - Added support for Tessellation Evaluation Shaders, Tessellation Control Shaders, and Compute Shaders
    - Started on the abstact ConfigParser with pre-redfined rules for each config, just as how RuneScript stores it's configurations.
    - Finished the majority of the cache system with very decent (in my opinion) API.
    Cache API
    Code:
    try (Cache source = Cache.open(Paths.get("source_cache_path"))) {
    	try (Cache destination = Cache.create(Paths.get("destination_cache_path"))) {
    		/* grabs the maps archive from the source cache */
    		Archive source_maps = source.getArchive(Js5Archive.JS5_MAPS);
    		/* creates new archive for our desination cache maps */
    		Archive destination_maps = destination.addArchive(Compression.GZIP, FLAG_NAME | FLAG_WHIRLPOOL);
    		/* copying squares from x:50,y:50 to x:75,y:75 */
    		for (int y = 50; y < 75; y++) {
    			for (int x = 50; x < 75; x++) {
    				Group destination_group = destination_maps.addGroup(destination_maps.getFreeGroupId(), Compression.GZIP, "m" + x + "_" + y);
    				Group source_group = source_maps.getGroup("m" + x + "_" + y);
    				source_group.copy(destination_group);
    			}
    		}
    		/* or can be done like this */
    		for (int y = 50; y < 75; y++) {
    			for (int x = 50; x < 75; x++) {
    				source_maps.copy(destination_maps, "m" + x + "_" + y);
    			}
    		}
    		/* deletes the source cache */
    		source.delete();
    		/* moving the destination cache */
    		destination.move(Paths.get("target_directory"));
    		/* rebuilding the cache */
    		destination.rebuild(); // it creates a temporary folder.
    	}
    }
    /* everything above can be done in static layout like this */
    Cache.move(destination, Paths.get("target_directory"));
    NO ONE IS PERFECT
    "No one in this world is pure and perfect, if you avoid people for their little mistakes you will be always alone in this world, so judge less and love more."
    "Ship in the harbor is safe, but that is not what ships are built for."
    Reply With Quote  
     

  2. Thankful users:


  3. #22  
    Registered Member

    Join Date
    Sep 2014
    Posts
    300
    Thanks given
    122
    Thanks received
    91
    Rep Power
    158
    Just a headsup, you need to change the "Walied" a href in the Contributers tab to match your new profile.

    OT: Best of luck.
    Reply With Quote  
     

  4. #23  
    Registered Member
    Selseus's Avatar
    Join Date
    Aug 2017
    Posts
    386
    Thanks given
    11
    Thanks received
    73
    Rep Power
    84
    Following this! Keep up the awesome work and soon enough you'll have a tool people will be using for years to come
    Reply With Quote  
     

  5. #24  
    sυввч

    Sub's Avatar
    Join Date
    Aug 2007
    Age
    24
    Posts
    4,352
    Thanks given
    1,205
    Thanks received
    359
    Rep Power
    2845
    Good luck on this, a long needed application.
    Reply With Quote  
     

  6. #25  
    I heal clients


    Join Date
    Apr 2013
    Posts
    680
    Thanks given
    65
    Thanks received
    239
    Rep Power
    108
    Been off the development for a bit, studying for my decider year, anyhow, back today and continued the development for a bit further:

    Update #1:

    ChangeLog:
    Code:
    - Reformed the SceneGraph tree.
    - Created an abstract terrain system.
        - Starts with Terrain which extends SceneNode for transformation stuff and attaching.
        - BasicTerrain extends Terrain this is pretty much the very base class.
    - Created an abstract terrain generation system.
        - Starts with TerrainGenerator interface which holds the generate height methods (generate(x, y) returns height).
        - FlatTerrainGenerator implementation generates the same height for all the terrain points, the height is dynmically specified.
        - HeightMapGenerator implementation generates all the heights from a heightmap image pased through a constructor.
        - PerlinNoiseGenerator implementation generates a random height for each point using perlin noise algorithm, can be seeded.
    - Changed the rotations to use Vector3f instead, cba to learn Quaternions and their shit.
    - RenderAttachment class was introduced, which acts like a pre-render setup for each node in the graph.
    - Ported most of the old terrain system to the new one.
    Currently porting the old terrain system code to the current one.



    Update #2:

    ChangeLog:
    Code:
    - Finsihed RuneScript configurations compiler.
    - Finished RuneScript compiler, currently compiles to the 742
    - Much work has been done on a custom LaF in-order to replicate the current RS3 RuneScript IDE.
    RuneScript example:
    Code:
    [clientscript,test_script](int $parameter, string $base_string, int $dummy)(int)
    def_int $myint = 5;
    def_bool $mybool = true;
    def_string $mystring = "my dam new string";
    if($myint = 5) {
    	$myint = 4;
    }
    $mystring = "false block string";
    if($myint < 5) {
    	$myint = 1;
    } else {
    	$myint = 2;
    }
    $myint = calc($myint * 0);
    def_int $max = calc($parameter + 2);
    while ($mybool ! false) {
    	if($myint > $max) {
    		$mybool = false;
    	} else {
    		mes("text");
    	}
    	$myint = calc($myint + 1);
    }
    def_string $my_case = "none";
    switch($myint) {
    	case 0:
    		$my_case = "case_0";
    		break;
    	default:
    		$my_case = "default_case";
    		break;
    	case 1:
    		$my_case = "case_1";
    		break;
    }
    return 0;
    
    
    [clientscript,shit](int)
    return 0;
    Compiled binaries, works with rune-nova gamepack:
    https://www.dropbox.com/s/ubfmns0cerey6gl/shit.cs2?dl=0
    https://www.dropbox.com/s/6rd7gfhhrr...cript.cs2?dl=0
    NO ONE IS PERFECT
    "No one in this world is pure and perfect, if you avoid people for their little mistakes you will be always alone in this world, so judge less and love more."
    "Ship in the harbor is safe, but that is not what ships are built for."
    Reply With Quote  
     

  7. Thankful users:


  8. #26  
    I heal clients


    Join Date
    Apr 2013
    Posts
    680
    Thanks given
    65
    Thanks received
    239
    Rep Power
    108
    Been working on the cache, finished more types

    ChangeLog:
    Code:
    - Finished PreloadedConfigList
    - Finished IDKType
    - Finished StructType
    - Finished CursorType
    - Finished QuestType
    - Finished MSIType
    - Finished InvType
    Update #2:

    ChangeLog
    Code:
    - Finished HitmarkType.
    - Finished HeadbarType.
    - Finished basic RuneScapeTerrain implementation.
    Not much of a media, but just finished the core engine, started on the RuneScape implementations:

    Attached image
    NO ONE IS PERFECT
    "No one in this world is pure and perfect, if you avoid people for their little mistakes you will be always alone in this world, so judge less and love more."
    "Ship in the harbor is safe, but that is not what ships are built for."
    Reply With Quote  
     

  9. #27  
    I heal clients


    Join Date
    Apr 2013
    Posts
    680
    Thanks given
    65
    Thanks received
    239
    Rep Power
    108
    Got some more time to work on this further.

    Changelog:
    Code:
    - Started on the GUI designing and did a lot of work there
    - RuneIDE:
    - Syntax highlighting is now fully complete.
    - Syntax folding is now fully complete. 
    - Content assistant base has been done (needs more working, but it works fine for now)
    - Commands System (or known as Functions System) is now fully complete, including RuneDoc system.
    - Reworked trigger types to be more efficient, and better controllability.
    - Added stat primitive type, can be used with constants such as ^attack, ^defense, etc..
    - InterfaceEditor:
    - Encoding/Decoding has been done.
    - Properties editing, adding has been done.
    - Integration between InterfaceEditor and RuneIDE has been started.
    - RuneEngine was integrated for rendering.
    - Settings menu, saving, loading and including recents menu has been done.
    - Multi-interface workspace support has been added.
    - Improved the properties loading time by using a pre-generated templates system.
    - Perspective layout system is now done (includes saving and loading).
    - View bindings system now been has done. you can bind new views, open the closed ones, from window menu.
    Spoiler for Media:

    Attached image
    Attached image
    Attached image
    Attached image
    Attached image
    NO ONE IS PERFECT
    "No one in this world is pure and perfect, if you avoid people for their little mistakes you will be always alone in this world, so judge less and love more."
    "Ship in the harbor is safe, but that is not what ships are built for."
    Reply With Quote  
     

  10. #28  
    Contributor

    clem585's Avatar
    Join Date
    Sep 2013
    Posts
    3,788
    Thanks given
    706
    Thanks received
    702
    Rep Power
    570
    Quote Originally Posted by Im Melvin View Post
    Bro honestly, how long do you this this will take you? This is massively extensive.
    While it is a massive project, it might look bigger than it actually is since nobody has really tried something like this before. If you think about it, the "only" major elements are maps, interfaces, cs2 scripts and models. Almost each of these elements separately has been done before so it's definitely possible. The hardest will probably be the encoding/editing.

    Quote Originally Posted by Dr. Client View Post
    Got some more time to work on this further.

    Changelog:
    Code:
    - Started on the GUI designing and did a lot of work there
    - RuneIDE:
    - Syntax highlighting is now fully complete.
    - Syntax folding is now fully complete. 
    - Content assistant base has been done (needs more working, but it works fine for now)
    - Commands System (or known as Functions System) is now fully complete, including RuneDoc system.
    - Reworked trigger types to be more efficient, and better controllability.
    - Added stat primitive type, can be used with constants such as ^attack, ^defense, etc..
    - InterfaceEditor:
    - Encoding/Decoding has been done.
    - Properties editing, adding has been done.
    - Integration between InterfaceEditor and RuneIDE has been started.
    - RuneEngine was integrated for rendering.
    - Settings menu, saving, loading and including recents menu has been done.
    - Multi-interface workspace support has been added.
    - Improved the properties loading time by using a pre-generated templates system.
    - Perspective layout system is now done (includes saving and loading).
    - View bindings system now been has done. you can bind new views, open the closed ones, from window menu.
    Spoiler for Media:

    Attached image
    Attached image
    Attached image
    Attached image
    Attached image
    Nice progress, I wish you the best of luck. I'm currently doing the same kind of project, though I don't plan on implementing cs2 scripts because of their complexity.
    Project thread
    Reply With Quote  
     

  11. Thankful user:


  12. #29  
    I heal clients


    Join Date
    Apr 2013
    Posts
    680
    Thanks given
    65
    Thanks received
    239
    Rep Power
    108
    ChangeLog:
    Code:
    - Finished Commands Editor in C# (Thanks to KJ9)
    - Finished dynamic tile updating and streaming data to the gpu.
    - Finished overlay shapes, and overlay rendering.
    - Refactored bunch of CS2 primitives, and started on array support.
    - Began converting the commands to the new commands system.
    - Started on tile blending again.
    - Started on LocType.
    Spoiler for Media:

    Attached image
    Attached image
    NO ONE IS PERFECT
    "No one in this world is pure and perfect, if you avoid people for their little mistakes you will be always alone in this world, so judge less and love more."
    "Ship in the harbor is safe, but that is not what ships are built for."
    Reply With Quote  
     

  13. #30  
    现场大

    tiller's Avatar
    Join Date
    Dec 2015
    Posts
    757
    Thanks given
    335
    Thanks received
    164
    Rep Power
    303
    Looks good, best of luck w this Walied.
    Attached image
    Reply With Quote  
     

Page 3 of 5 FirstFirst 12345 LastLast

Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •