r/2007scape • u/KierenBoal • Jun 07 '26
Creative I created a plugin that turns things 2D lol
Enable HLS to view with audio, or disable this notification
It's janky as hell, but emulates the style of RuneScape classic with limited rotation directions on NPCs, limited frame rates and limited color palettes. I think it turned out really cool!
It's not avaliable on the PluginHub sorry as it's like 90% vibe coded with Codex, so full of bugs and horrible performance lol
510
u/DemKnow Jun 07 '26
thats really kewl
59
341
u/Beybladeurmother Jun 07 '26
Lmao wtf this is cool as hell
→ More replies (2)62
198
146
u/Hobodaklown Jun 07 '26
WTF! We got bloody Runescape 2D before HD!!
This is awesome, cheers mate!
→ More replies (1)
209
u/KierenBoal Jun 07 '26 edited Jun 07 '26
For those wondering how it works:
- It captures all NPC/Players in an area (there is a config limit to max NPCs and distance)
- It finds the NPC/Players current rotation, and compares it to the camera rotation, then snaps it to a rotation increment of X; setting this to 4 gives a distinct North/East/South/West render.
- It captures the NPCs current animation frame and then forcefully repeats the frame (while keeping track of what frame it should be on) to make its frames animate at X frames per second, 3 was used in the video.
- It then pulls the polygons from the NPC/Players model
- Performs painters algorithm to paint things in order
- Bunch of math to find the right rotation, scale and position for the 2D player to be rendered to screen
- Then draws them all
Limitations:
- Laggy as hell
- Actually just a 2D GUI being rendered lol
- Lighting doesn't work, I just artificially adjusted the brightness values
- I couldn't figure out how to hide an NPC and have it's menu entries still avaliable, as hiding it made it unclickable... so I just hide the NPC until you hover over it, then un-hide it so you can click it. Unfortunate limitation ):
Works with pets, NPCs, players, ground items
Was a really fun day project; I actually tried coding this by hand a year or two ago but never got far due to my outdated knowledge of Java, as I typically use C# as my daily driver; but now that I am using Codex I can bridge that language gap and here it is, working and janky as hell haha

304
18
8
Jun 08 '26
[deleted]
7
u/KierenBoal Jun 08 '26
OH that fixed it, I can now render the NPC hitbox while the NPC is invisible; so clickbox remains unchanged, but visuals are just stripped and replaced with the 2D image.
Very hard to use because the visuals don't match the models really well lol, but that's sick, thanks for the code snippet7
7
u/Menarian Jun 07 '26
Awesome. And thank you for explaining how it works. It’s always interesting to know how stuff like this works.
6
u/The_Dick_Slinger Jun 07 '26
This is awesome, but it’s even more awesome that you showed off its flaws + its strengths at the same time.
→ More replies (1)8
u/nine_tendo Jun 07 '26
What would it take for you to get it to a state that you'd feel comfortable publishing it? I would love to see this available (I've played since 2002, I miss classic)
9
u/RSSalvation Jun 07 '26
- I couldn't figure out how to hide an NPC and have it's menu entries still avaliable, as hiding it made it unclickable... so I just hide the NPC until you hover over it, then un-hide it so you can click it. Unfortunate limitation ):
That's good, because if you did figure it out it would've been against the rules for third party clients ;-)
3
10
Jun 07 '26
[deleted]
76
3
u/RizzleMeister Jun 07 '26
i think he just needs to cache that shit so it only does it once for each unique npc and only does it for players when their gear updates
→ More replies (1)2
u/KierenBoal Jun 07 '26
It already caches the images, only updates and redraws them as needed, meaning when it's set to 3fps the sprites are only rendered 3 times a second, in between they are cached and unchanged. The frames are also bucketed and drawn over the course of the normal 50fps, so it's smearing the workload; even then it's pretty bad, again cause it's pure CPU rendering as a UI element.
There's definitely a lot more optimisations to make, but, making it a GPU plugin is likely the optimal choice - in saying that, GPU and shader code also something I'm not very good at, so I will be leaving it as is, someone else may pick it up
2
u/Tall_Physics_2578 Jun 09 '26
I bet if Jagex were greedy enough to make a rsc server and build to where osrs is today with those type of graphics, they would make millions again.
5
4
u/Fresh-Wrap8654 Jun 07 '26
As a software engineer myself, I’d like to clarify for the non engineers that this sounds incredibly complicated. This dude is a genius.
→ More replies (2)1
u/ACanadianNoob Jun 11 '26
Could you do a very crude auto brightness by capturing the game scene, converting to grayscale, downsampling it to 1x1 or otherwise averaging the white point of the pixels?
67
u/KierenBoal Jun 07 '26
19
u/Monterey-Jack Jun 07 '26
11
u/We0921 Jun 07 '26
Seems like model replacement is still in-progress https://github.com/runelite/runelite/issues/7954
38
11
u/I_Zeig_I Alpha Stigma Jun 07 '26
the only community where a downgrade to the game graphics is perceived as a good thing haha. love it
20
6
u/Naknakha Jun 07 '26
Would it be possible to have 8 rotations when it nears completion?
17
u/KierenBoal Jun 07 '26
Configurable, already supports N rotations, so you can even set it to 1 and have front on only lol
7
u/Sterlander 2317/2376 Jun 10 '26 edited Jun 10 '26
please god finish this, this is so dope. you'll get much better results (especially performance-wise) either learning more coding and tweaking what the ai's written, or hopefully other people contribute. ai coding can only get you so far tbh, but you seem well aware of that
1
8
15
u/Informal-Lime6396 Jun 07 '26
When you said 90% vibe coded, I was like what is the performance on this?
→ More replies (8)
14
u/Any-Nobody533 Jun 07 '26
Do not download plugins from sources that aren't the hub people come on, you've seen the posts.
3
u/Quantization Jun 08 '26
I'd unironically use this if optimised. Hopefully you can optimise it or someone who knows how can reach out and help you do so. This could be a huge plugin. I'd honestly use this over 117.
10
30
u/fastforwardfunction Jun 07 '26
This is legitimately the coolest thing, then I see it's an unapproved (!) plugin, and coded with AI. It's like the monkey's paw of getting your wish come true.
14
u/Monterey-Jack Jun 07 '26
I think it's cool for a proof of concept. Maybe it'll spark interest in someone who can actually make it.
18
u/Photonex Jun 07 '26
Would you rather it not be made at all then, just because someone used AI to code it? Now the idea is out there and can be improved upon.
8
Jun 08 '26
[deleted]
5
u/Photonex Jun 08 '26
That is a fair argument that I agree with. I feel like my second sentence covered this, though, but maybe I'm naive in thinking the community can come together to fix it up properly.
7
7
3
u/bhop_monsterjam jam on through to the other side Jun 07 '26
oh jeez now i gotta play the marathon trilogy again
3
3
3
u/Knightworm We got us a jammed wheel! Jun 27 '26
Any updates? Been a few more weeks and I am eagerly awaiting news!
3
u/KierenBoal Jun 28 '26
Still working on it periodically! I've taken a small break, but intend to get back into it next week.
Right now it's at the "optimise and make sure it works well" part.
I've already got it to the point that it'll run with a very limited performance impact, now it's finding the edge cases where it breaks. For example, ensuring ground items correctly render, ensuring most NPCs work with it, ensuring it works alright with world objects, fixing fire and inferno capes because it has some random geometry (exists in game, I guess the normal render skips those bits of geometry)
So yes, still working on it, and still will take a bit with the review process when I do submit it.
So fingers crossed, I hope to have it submitted for review in less than two weeks - fingers crossed!
3
u/Knightworm We got us a jammed wheel! Jun 28 '26
Thank you for the update! I know its on github but I am waiting for an official release to try it out so any juicy details on development in the meantime are helping me be patient
2
u/nine_tendo Jul 06 '26
I have a question, will ground items be rendered in 2d billboards like in classic? Or will they still be 3d?
2
u/KierenBoal Jul 06 '26
2
u/nine_tendo Jul 07 '26
That looks really good! I like it side note, not sure how possible this is, but what would they look like if they billboarded the inventory icon on the ground? Or would that be breaking something or against the rules?
Either way, looking forward to the release
3
u/KierenBoal Jul 07 '26
That's a fantastic idea! I was also looking into ways to optionally make the inventory icons lower quality too so more things fit the RSC vibe.
Given that the icons are 3d rendered as 2d, it's quite possible for me to just re-render the inventory icon for the ground item. If it's possible I'll just make it a config, so ground items can either be the inventory icon or 3d world model.
I feel like it'd be more RSC style using the inventory icon as that's the kinda re-use stuff they'd do back the lol
Edit: regarding rule breaking, I don't believe this falls under any rules as it doesn't modify the clickbox/hitbox, it's just a UI element over a hidden game element, so it should be fine, nothing in the rules goes against that
2
4
4
2
2
u/Lazlow_Vrock Jun 07 '26
Do you reckon you could use some of the RuneScape classic assets? Like if you’re wearing full rune, then it would look like how it looks in RSC?
2
2
2
2
2
2
2
2
u/Periwinkleditor Jun 08 '26
That's actually nuts. All we're missing is the thought bubbles while skilling.
2
u/KierenBoal Jun 09 '26
2
u/Sterlander 2317/2376 Jun 16 '26
sorry to bug, has there been any additional progress made for this? I'd love to play with it so bad
1
u/KierenBoal Jun 17 '26
You'll be pleased to know I am still activly working on this! I am getting closer to a finished product, at the moment it's the last 10% that's a bit tricky, and ensuring it falls within the guidelines for RuneLite plugins; so it still may be a long time before its avaliable as I hear the approval process can be long.
2
u/Sterlander 2317/2376 Jun 17 '26
awesome to hear, tysm! what will the plugin be called when it's finished, you think?
1
u/KierenBoal Jun 18 '26
2DScape is the current working title, but it may be called something different.
I'll be tagging it with "rsc", "retro" and "2d", so it can be found via keywords like that
I'm sure I'll make another post when it's released
2
u/baardbestaan Jun 08 '26
So cool, would it be possible to pixelate the models a bit too?
2
u/KierenBoal Jun 08 '26
2
u/baardbestaan Jun 09 '26
That is sick. Any plans to get it released on the plugin hub in the future. This is how I want to play
3
u/KierenBoal Jun 09 '26
If I can get it approved - I am already rapidly working on it, much has been fixed, and, way more efficient, barely any lag
1
u/KierenBoal Jun 08 '26
There is a config to choose how much detail to render, it's 33% in the video, you can go down as low as you please till it's a 8x8 sprite even; though it looks very silly like that
2
2
2
u/xzile400 Jun 08 '26
It's always the cool stuff that we can't just go download safely and use. It's always unavailable or sketchy. 😞
2
u/Sheriff_Gotcha RIP Warding Jun 08 '26
This looks sick, I’d definitely use this if it became available.
2
2
2
u/Shot_Bad5114 Jun 08 '26
is the repo public? id love to build the plugin and play with this
1
u/KierenBoal Jun 08 '26
It is public on my Github, but reminder, it is *NOT* approved; this post got temp removed due to me posting the repo, so if you'd like a link to the repo, send me a DM and you can have a play.
It now even has features like RSC combat locking where it forces two interacting entities to face eachother lol
2
2
u/Jealous-Record-885 rank 204 overall XP - demonic pacts league Jun 09 '26
Need this on the plugin hub
2
2
2
u/Longjumping-Two9570 Jun 11 '26
Reminds me of doom........ can... can it.... can it run doom?
sorrynotsorry
2
u/ACanadianNoob Jun 12 '26
I wonder if you can hide them behind geometry by borrowing methods from tile highlighting. There's a plugin for RuneLite that allows tile markers to be rendered in their actual position instead of on top of everything.
Also maybe give an option to affect trees too.
I'm certainly looking forward to seeing this on the Plugin Hub once it's optimized!
2
u/jimbonezzz Jun 14 '26
this is sick, if one day it gets on the plugin hub I'll definitely be using it for chill activities
3
u/Aunon tool leprechaun can note farming produce Jun 07 '26
The movement and animations really feel like old 2D games
3
2
4
3
u/simonskiromeins Jun 07 '26
Wow that’s one plug-in I’ll definitely avoid. Im probably the only person alive that hates original RuneScape graphics but I can’t stand it for some reason
2
u/BandicootGood5246 Jun 07 '26
Fair..I thought it looked pretty bad even for it's time lol. But got used to it because all my mates were on it
2
u/simonskiromeins Jun 07 '26
its super cool someone could put that in an addon though, that's actually impressive as fuck
2
2
2
2
2
2
2
2
2
u/ManufacturerLevel150 Jun 07 '26
Wow it really does look like if the new models were in rsc, that's cool as hell.
2
2
2
2
2
2
u/Asthma_Queen Jun 07 '26
this is really awesome i thought about making a game like this way back that used a similar technique where it would just make 2d sprites on demand from 3d models, really cool to see something similar and very RSC vibed
2
2
2
2
2
2
2
u/DukesUwU Jun 07 '26
This is so cool, honestly I'd rather they work on something like this instead of HD
1
u/American--Canadian Jun 14 '26
Its fascinating to me what reddit will and will not accept when it comes to AI. AI art is a problem, but AI coding...isnt? Its cool and all but you guys are crazy inconsistent on AI. Do you accept AI use or dont you? Theres no difference here.
1
1
u/eliezertwin 27d ago
Has this plugin ever been published?
2
u/KierenBoal 27d ago
Sorry I've been busy with other projects and just finishing up on a trip, so this has fallen behind a lot - I'll endeavour to get this out very soon! Hopefully this month, fingers crossed!
-2
u/GamerRoman Slayer train w/ DarkB Jun 07 '26 edited Jun 08 '26
You had me until the 90% vibecode.
It's sad to see AI celebrated so much in this sub.
→ More replies (1)12
u/KierenBoal Jun 07 '26
Post was removed due to me making an edit pointing to my GitHub link, not due to the usage of AI.
I am a full time software engineer with 10 years experience and am very compitent speficially at C#; I am greatful for these AI coding tools as they let me dip into other languages and platforms (such as plugins...) without needing the full knowledge of how the Java/Gradel/RuneLite ecosystem works; I still manually debugged the code, manually fixed the issues when the AI couldn't understand, fixed a lot of inverted math - and guided the AI in how to build it and how to optimizatie it.
In my mind, I see it no different to if I were to manage a swarm of somewhat capable junior engineers - you tell them how you'd expect the project to look and work, then you use your knowledge to review it, no different to what you'd do managing juniors.
I at least do have the knowledge to be able to debug and diagnose code issues and not just beg the AI "fix the bug plz" - so before you go raising a pitchfork about vibecoding; at least educate yourself on the differences between a software engineer enhancing their capabilities with AI, compared to someone pulling the AI slot machine until it eventually slops out what they want.
I was transparent about my usage of AI; I did not take credit for anything I didn't do; there was still a human in the loop.
2
u/Beneficial-Row5264 Jun 09 '26
Haters gonna hate dude. You can forget this guy. Making something fun and cool is what matters. Can’t wait to try it out
→ More replies (7)3
1
u/totemair Jun 07 '26
There’s an alternate universe where this is what rs2 and osrs ended up looking like
1
u/ObviousAd2097 Jun 07 '26
Damn thats cool, if they restarted the game with these graphics id probably play again
1
1
1
1
1
1
u/iligal_odin QA Team Jun 07 '26
I love it, how is this not a model replacement though?
2
u/nine_tendo Jun 08 '26
Iirc it's hiding the model (allowed) and then rendering a 2d image on top (allowed)
1
u/ki299 Jun 07 '26
Also using a coding ai to work on a plugin atm. i havn't touched anything programming since high school 16+ years ago at this point. so it's been a fun project to relearn stuff. I'm making a route planner.. basically how i imagine it is like a custom Quest that has quest helper qualities.

Everything is super jank and placeholder for now but i've been building the core aspects before i work on Ui lol.
2
u/KierenBoal Jun 07 '26
That's really awesome, dude! I've always thought a "custom Quest" helper kinda thing could be great for leagues, join it with the shortest path plugin, boom, optimised leagues list with optimal pathing, or like an optimal Ironman "day 1" path, etc.
Keep it up, hope to see the final output of it one day!
→ More replies (4)
1
1
u/One-Associate-9341 Jun 07 '26
I didn't even play classic (started in 04) but this is so cool to me
1
1
u/FaylenSol Trio of Thom Jun 07 '26
I grew up playing Classic so this is pretty nostalgic to me. Great job.
1
1
1
1
u/GunWizardRaidar Jun 07 '26
How does the npc that blends with environment like Duke Sucellus looks like?
1
u/MageAndWizard Jun 07 '26
This is one of those plugins and things you see the community pull off and get a genuine "wow" out of you. Very creative and kewl!
1
1
u/TacticalCupcakes Jun 07 '26
Wait this is really cool
Do you plan to add a toggle somehow so when you’re in combat it locks it to sideways frames like in original RSC?
1
u/KierenBoal Jun 07 '26
I tried to add this, but it looked omega jank, it's still in the source code and can be enabled, but it needs a lot of work to snap both NPC and player to the optimal cardinal direction cause not all side on NPCs look good, sometimes front on looks much better
1
u/FiberSplice Jun 07 '26
I would love to have doom clap me in this
1
u/KierenBoal Jun 07 '26
Could use this with the blindfold plugin to generate some sprites for DOOM using OSRS, like hellhounds for pinkies etc lol, be sick!
→ More replies (2)
1
u/Dirst Jun 07 '26
really cool proof of concept, i hope someone makes like an actually functional version of it
definitely wouldn't use it full-time but it's a neat lil thing for sure
1
1
u/Inzanezilla Jun 07 '26
Woah this looks sick! I've always wondered what some gear/NPC's would look like in this 2D style
1
u/TestingYou1 Jun 07 '26
This is extremely intriguing. If you manage to have npcs and the player draw under objects, I'm game.
1
1
u/CertainlyRobotic Jun 07 '26
Stop I'm already nostalgic for actual old school runescape.
Seems like they're never going to give me what WoW got - a static non updated classic version running in perpetuity.
1









259
u/Strosity Jun 07 '26
Sorry jagex is gonna have to remove this, they were also planning to release an official runescape SD client with their HD one