This project is a masterclass in technical reverse-engineering, bridging legacy MMO architecture with modern engine workflows. It provides essential insights into how character controller design and unit detection systems dictate server-side efficiency.
深掘り
前提条件
- データがありません。
次のステップ
- データがありません。
深掘り
First Blood - Rebuilding WoW in Unity #10追加:
Welcome back to rebuilding wow in unity.
This is devlog number 10.
And as the title would suggest this week I got combat working.
Um but I also did a bunch of other things.
Um particle effects are one of them, something I wanted to show on the title screen.
Things like the snow clouds and Sindragosa's um like glow fiery glow.
Um So I tried to get it working throughout the entire client thus far.
So yeah, there's quite a lot. Um we will go through I think whilst it's loading in I would probably just go over small things like uh I got rid of the um the final Blizzard assets from the actual project.
I think the last one was the mouse cursor. So everything now within this Unity client is uh it's based entirely on that game install data. Um nothing is within the Unity project itself.
Um And yeah, that was significant. Um the UI system I also spent an entire day just tidying that up because it was really messy. Um and yeah, given how important UI is for for this project, uh it was worth it.
>> [gasps] >> So just for the setup of this video I'm going to have cameraman over here following um my character here. So let's get into it.
Um one of the first things I got working was um um being able to hover over units so that they uh, glow.
Um so when I have my mouse over them, they should glow. The actual glow is just an unlit shader pass. Um which seems to achieve a better look than I was trying to do like a rim light effect, but I don't think that's quite what what is expected.
Um Yeah.
I think you can see how it looks on the retail client.
And then see how it looks on the Unity clients. I think it achieves that look. Um Yeah, so then that being able to target uh, units is also a big one. So now I'm actually driving that target frame name UI properly. So within that target frame, we've got things like the a human readable name. So there's a name lookup going on. I think last week it was just a identifier of sorts.
Um now is a human readable one. We got the faction color strip in place or rather like is this unit hostile or not? Uh, if so, if it's neutral, yellow.
Uh, hostile, it's red. If they're friendly, it should be green. Um I haven't hooked up the other cases like PvP and like a the blue one. I haven't got in there yet.
Um Yeah, we've got that in. We've also got the level of the unit. So right now they're showing like level two. Um and also the portraits. So I've only got two of the portrait like there's only two cases uh for the static portraits. It's either a unit, in which case it shows this null uh portrait.
Or if it's anything other than a unit like remote players um it shows this other one. So, yeah, that's I think portrait generation is going to be a whole separate thing for the future.
Um yeah, so moving on.
Uh we've got the action bar sort of working. So, I've got things like hovering over the abilities, um selecting the ability.
There's another overlay.
And then when I release it there's the radio sweep for the global cool down.
Uh buffs do work.
Um still need to finalize how they appear, but this value over here actually updates.
So, when the buff duration runs down, it'll update. So, it'll be like 29 minutes and so forth.
Um And when I'm like casting a spell there's like the selected overlay, a yellow overlay that's applied.
Um So, that would also work for things like hopefully channeling abilities or what have you. Um I don't have spell effects. That's I think uh I've started to work on um particle effects um as as you saw on the title screen.
Um but I haven't got the abilities in yet.
Um yeah, so the icons for spells, that's also a thing. Um there's a look up going on based on the spell ID. that retrieves the the path to the icon.
Uh yeah, so that's something.
Um yeah, I probably Oh, I forgot to show that. The um the way I got the um visualizer for uh things. So, when I when I was implementing this, I needed to figure out how to determine whether or not the mouse is over uh a unit. Uh initially, it was a like a screen like uh screen-based thing. Um which probably is like a little circle essentially uh was in place based on the position of the unit.
Uh the problem is with that it's not accurate and sometimes you just you would have to like find this like small circle um somewhere on the unit. So, instead, I've changed it to be this uh axis-aligned bounding box approach um that is based on the animator uh bounds.
Um so, it like pulsates.
Uh which I think's quite cool. Um so, yeah, that's that's in.
Um what else? Yeah, like animations are in somewhat. I I started by getting things like the jump animation in.
And um as as I was putting in the jump animation, I realized how much work I have to do on my character controller.
Um because of things like how it blends between the jumping and the running.
I got it sort of working, but it just feels very I don't know. It doesn't feel right.
Um I know like when I'm stationary, there's like a a landing animation that works as well.
Also, when I kill units, they the death sequence or the death animation plays and then before it was just looping endlessly um because some of these units Oh. Oh.
You got corpses moving.
Yeah, he's alive. Okay.
So, I can just Yeah. Yeah. Okay.
That's a thing. I haven't reset the animation. [laughter] If they respawn, um so that's I'll make a note of that.
Um Always fun. Um Also, so uh in the last video I was talking about how um What do you call it? Remotes.
>> [snorts] >> Like when I'm when you look at other players um how they move It was before it was like it was sliding around. Um and that was it led to this like really awkward like bumper car effect. Um So, now I on the basis of some feedback I got on that video, I put in um some like packet interpolation between it. So, it looks a bit better. So, if I move this character on the Unity client still jumps around here and there, but it doesn't seem to like slide as much.
Um I haven't got all the animations in like strafing, but um Yeah. that that was a thing.
Problem is it looks good this way around, but if I play this character, he still jumps around. This this behavior, I think I'm doing something wrong in terms of like the packets I'm sending, the positions I'm sending to the server.
There seems to be this like snapback.
The snapping behavior, uh I need to look into that.
But at least this way around is a bit better.
Um but yeah, so that's something.
Um also, I got zone like skyboxes and fog working. So, right now, yeah, so the skybox most skyboxes, like pre-Burning Crusades, like all throughout like Eastern Kingdoms, Kalimdor, um they seem to be gradients, color gradients.
There's like five colors that it goes between.
And um it just blends between them. So, I I hooked that up. There's also a fog color.
Um I don't know if I can get the fog to show.
Excuse me.
Um yeah, something like that. Maybe it's a bit awkward with all these trees. Um so yeah, the day-night cycle is in.
I've got this like color value this time value that I can adjust, so look yeah.
So, you may notice like the fog down here and the skybox above changes based on that value.
Um this time value is driven by the server, so there's like intervals of like as the every minutes or something of the server time changes, um that drives this.
So, that's pretty good.
Um And yeah, I think that's kind of everything I wanted to cover. Um I think for next week, it's just really going to be the same as this week in the sense of if there's something I notice, I implement. Uh so, for instance, things like the cast bar not being there, that's probably going to be something I work on next week.
Fixing this like movement situation. Um which you know, they're so intertwined, like this is also like as much as it's a networking thing, it's also a character controller thing, and um one thing I learned from doing this is you know, how you design your character controller um doesn't it affects things like how you communicate with the server about it, like uh how often do you update your position, the rate at which you send packets to the server to say I've just changed position.
It matters, um especially from like a bandwidth perspective. You could just you could create a client that just spams so many position updates that it might be fine, but yeah, it's all something to learn, and I'm learning as I go. There's a lot to it. Um Yeah, so I'll I'll just carry on working on it. If you've got any thoughts on what I should implement next or should fix next, like these moving corpses, uh feel free to leave a comment. Uh I look forward to reading them and uh hope this was interesting. So, yeah.
I'll see you next week.
関連おすすめ
VALORANT's Latest 'Exclusive' Tier Bundle is Rough...
KangaValorant
17K views•2026-05-28
Flight Attendant Mocks Poor Looking Black Woman — Mid Air Announcement Exposes Her Real Power
SkyboundStories-b4r
184 views•2026-05-28
I FIXED My Friend’s Blown Turbo RX-8… Then Sold It
Cameron-RX8
134 views•2026-05-28
NewsWatch 12 at 5: Top Stories
NewsWatch12
1K views•2026-05-28
Simon Jordan & Danny Murphy deliver PREDICTIONS for Arsenal's Champions League FINAL with PSG
talkSPORTArsenal
6K views•2026-05-28
Botting is OUT OF CONTROL in Classic WoW (Again)...
SolheimGaming
108 views•2026-05-28
The "AI Job Apocalypse" is CANCELLED!
WesRoth
9K views•2026-05-28
STREET FIGHTER 6 - INGRID Story Walkthrough @ 4K 60ᶠᵖˢ ✔
RajmanGamingHD
12K views•2026-05-28











