guilhermelhr / unityro Goto Github PK
View Code? Open in Web Editor NEWA Unity-based Ragnarök Online client
License: GNU Affero General Public License v3.0
A Unity-based Ragnarök Online client
License: GNU Affero General Public License v3.0
ZC_INVENTORY_ITEMLIST_NORMAL (0x991)
needs to be hooked so we can see stackable items in the inventory listDescription
Whenever you rotate the camera the sprites are wrongly displayed
How to reproduce
So, hey. I've been wandering around the code and couldn't find any example of the ROCamera being used anywhere.
Is that class working? How's it supposed to be used? As a Camera Component or as the Camera itself?
I could notice the //GL
at the end of Update()
. Does that stands for Good Luck
? haha
We should look into a way to generate these tests in runtime or compile time.
Originally posted by @guilhermelhr in #11 (comment)
It seems like Packet obfuscation is only used by map server, for that we would need to enabled it on our side as soon as we connect to map server. Other than that, we would need to find out how to encrypt the packets.
So far I've got this:
var key = (((((ENCRYPTION_KEY_1 * ENCRYPTION_KEY_2) + ENCRYPTION_KEY_3) & 0xFFFFFFFF) * ENCRYPTION_KEY_2) + ENCRYPTION_KEY_3) & 0xFFFFFFFF;
cmd |= (ushort)(key << 16 & 0x7FFF);
At this moment we deal with the byte array in such a way where we must manually read each field from the a BinaryReader created from that array.
Goal would be to have structs (ideally the same as rA/herc) and to use De/Marshalling to translate those into/from byte awways.
Pros:
Cons:
Does anyone have any input on this?
Description
It seems to me that WebGL builds pack everything into its bundle not allowing us to change the config.json
like we use to do in the standalone build.
We've discussed some time ago that it would be nice to have a script/tool/whatever sense to run before a build or at the first time someone downloads the project that would extract the GRFs and build the prefabs of cities, items, mobs and save them somewhere Unity can easily access in any kind of build
When Camera Y rotation is going above 180, it flips to the negative value and starts decreasing. This behaviour is making possible to see the side of the sprites
It works, but using it feels quite different from RO. I think in the game it gets the nearest walkable node to where you clicked and redirects you there.
In RO it's also possible to hold down mouse_1 to keep walking.
Let's merge it like this and open an issue for improving it later.
Originally posted by @guilhermelhr in #10 (comment)
Figure out why this isn't working
Originally posted by @guilhermelhr in #10 (comment)
The current entity shader is not being properly lit and therefore seems a bit off of the environment...
There's this tutorial which I think could work
The skill UI is halfway done and following are the key points:
ZC.SKILLINFO_LIST
in order to display currently learned skillsCurrently we're working with a way outdated rAthena version. That is 20180621.
Goal to update the their latest supported version as soon as possible to avoid having loads of packets to refactor
Hi,
I can't find config.txt, which folder should be in to and what is it supposed to be inside exactly?
Thanks
Boa noite Guilherme, estou tentando testar esse seu projeto.
Eu criei o arquivo para habilitar o "Unsafe Code", ao executar a cena, a CPU vai para 100% e nada acontece (já configurei o caminho da minha grf)
Estou utilizando a última versão do Unity.
Esse projeto está funcionando na última versão? Precisa de alguma configuração extra que eu deveria saber?
Desde já, obrigado.
Wow, this is a huge project... I am super look forward it!
I don't have any experience with unity, so how should I compile this project?
No need to describe in detail, I need some keyword like IDE name as a guide, I look forward to receiving a reply
Check Poring and Pupe for instance
At the moment we have two major problems:
Description
At the very moment the server accepts our connection and therefore sends packets for us to spawn characters and etc, we're probably still loading the map scene. That asynchronous behaviour led me to implement the following:
When we receive the accept login packet from map server, we initialise the UI GameObject which holds a big canvas with many controllers inside and then when the server starts sending packets we're ready to receive and parse them.
I believe this isn't the right approach because we're instantiating UI stuff just because of the ability to receive and parse packets. So following this we would probably be better off if we create some kind of presenter/viewmodel which holds data received from the server and whenever the UI is ready and instantiated it would require that presenter/viewmodel and then read whatever data it needs to function.
We used to position the item dropped with
var x = pkt.x - 0.5 + pkt.subX / 12;
var z = pkt.y - 0.5 + pkt.subY / 12;
Which was working on 20180621. Now with 20200401 its X values are above what we're expecting
Some cursor animations, like the bubble from talking to a npc requires more than one layer. The Unity cursor doesn't offer support for that.
Perhaps extracting the Entity Renderer might be a good idea
Similar to what we've done in the character selection we need to be able to render the current entity in some UI windows.
Equipment Window
Skills Window
The Skill Window has the character in a sit state + a looping dori-dori animation and doesn't have the head attachments
The Equipment Window has the character standing and the head attachments are rendered
Suggestion
On pathfinding:
clicked tile is walkable -> player is in a non-walkable tile -> teleport there
ZC.NOTIFY_MOVEENTRY9 seems to be broken
Ran out of virtual channels. Audio clip "data/wav/se_prtbird_01.wav" will not be played.
UnityEngine.AudioSource:PlayOneShot(AudioClip)
Sounds:Update() (at Assets/Scripts/Renderer/Map/Sounds.cs:75)
MapRenderer:FixedUpdate() (at Assets/Scripts/Renderer/MapRenderer.cs:202)
Core:FixedUpdate() (at Assets/Scripts/Core.cs:159)
Skill tree is partially implemented.
Still need to implement the skill description
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.