VGOEmulator.net

A Development Project for the Vanguard:Saga of Heroes MMO

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • Portal
  • Project Manager
  • Bug Tracker
  • Server List
  • Wiki
  • Donate
  • Login
  • Register
  • Board index Development Content Development
  • Search

Identifying Unreal bits

VGOEmulator content development topics.

Moderators: Moldew, Jakkal

Post Reply
Advanced search
37 posts
  • Previous
  • 1
  • 2
  • 3
  • 4
  • Next
User avatar
John Adams
Retired
Posts: 4583
Joined: Wed Aug 28, 2013 9:40 am
Location: Phoenix, AZ.
Contact:
Contact John Adams
Website
Re: Identifying Unreal bits
  • Quote

Post by John Adams » Sat Jun 21, 2014 9:35 pm

[quote="TigerTiger"]It will dump all the unreal bits from Everything.[/quote]
btw, Yes please. Show me everything from everything so I can stop guessing what this data is Thank you.
Top

TigerTiger
Posts: 99
Joined: Mon Oct 28, 2013 2:14 pm
Re: Identifying Unreal bits
  • Quote

Post by TigerTiger » Sun Jun 22, 2014 5:53 am

Here is the base script:
http://ps23dformat.wikispaces.com/file/ ... anguard.7z
Unzip this folder and place it in your C drive C:\QuickbmsVanguard
Then when Vanguard is running and when you want an unreal dump simply click VGUnrealDump.bat wait a few seconds (best if you keep still) and it will output a file called UnrealObjects.txt

UnrealObjects.txt is a tab-delimited 4 column file that contains info on each Unreal Object that is currently in memory.

Code: Select all

11125	human_M_clth_armorRobes105_0_CLR	Texture	Color.UTX_human_M_clth.None.	274538464
The first column is the objects number, the second is the objects name, the third is the objects class, the fourth is it's class path, and the fifth and most important one is the memory offset fot where the object is loaded (the memory offset is in decimal I don't know how to make it hex).

Each Class has it's own format. And that format also has it's own format. If we wanted to know the race id (m_iraceid) of each SGOPCPAWN we would search in column 2 for m_iRaceId
The whole entry is:

Code: Select all

3649	m_iRaceId	IntProperty	Pawn.Engine.None.	176967088
We would then go to offset 176967088 which in hex is 0A8C4DB0.
Then we would go +0x50 bytes above this to offset (this is hard coded for all IntProperties) to offset 0A8C4E00, and see the value
3C 04 00 00
This means that EVERY actor of classes derived from Pawn (for example Sgopcpawn Sgonpcpawn) will have there race id located +0x43c bytes past there base object.

Anyways scripts can be made to get the properties of any object. I'll be posting some scripts that do specific tasks such as enumerate all the "Enums", get the values for each "Const", dump the bytes for each native and unreal function ect.
Top

User avatar
John Adams
Retired
Posts: 4583
Joined: Wed Aug 28, 2013 9:40 am
Location: Phoenix, AZ.
Contact:
Contact John Adams
Website
Re: Identifying Unreal bits
  • Quote

Post by John Adams » Sun Jun 22, 2014 8:42 am

[quote="TigerTiger"]I'll be posting some scripts that do specific tasks such as enumerate all the "Enums", get the values for each "Const", dump the bytes for each native and unreal function ect.[/quote]
Thank you, this is pretty cool stuff. I am not good with ASM or memory sniffing, so hopefully your next dump scripts will help. I didn't realize you were working in a live, active session. I thought you had extracted everything from a stand-alone client that somehow showed every bit in the bitstream or it's structs. Xinux will probably understand the above more than me. But thank you, nonetheless. Good work.
Top

User avatar
John Adams
Retired
Posts: 4583
Joined: Wed Aug 28, 2013 9:40 am
Location: Phoenix, AZ.
Contact:
Contact John Adams
Website
Re: Identifying Unreal bits
  • Quote

Post by John Adams » Tue Jun 24, 2014 8:50 am

btw, it just occurred to me that the Unreal code might have some of these answers as well... so on a brief review of some info Xen posted in his Brain Dump, I found the Physics values.

Code: Select all

var(Movement) const enum EPhysics
{
   PHYS_None,
   PHYS_Walking,
   PHYS_Falling,
   PHYS_Swimming,
   PHYS_Flying,
   PHYS_Rotating,
   PHYS_Projectile,
   PHYS_Interpolating,
   PHYS_MovingBrush,
   PHYS_Spider,
   PHYS_Trailer,
   PHYS_Ladder,
   PHYS_RootMotion,
   PHYS_Karma,
   PHYS_KarmaRagDoll,
   PHYS_Hovering,
   PHYS_Bird,
   PHYS_Levitate,
   PHYS_FeatherFall,
} Physics;
Who knew all I had to do was actually search our own forums?
Top

Odinzz
Community Manager
Posts: 187
Joined: Fri Jan 31, 2014 9:22 pm
Location: Dirty Jersey
Re: Identifying Unreal bits
  • Quote

Post by Odinzz » Tue Jun 24, 2014 11:18 am

Lol !
The Platinum Order
Alliance of the Griffon
Brains and Brawn
Odinzz 55 Palladin
Psychosiss 54 Cleric ( So Close !)
Femic 55 Sorc
Dorinas 55 Blood Mage
And a mess load of alts!
Top

User avatar
John Adams
Retired
Posts: 4583
Joined: Wed Aug 28, 2013 9:40 am
Location: Phoenix, AZ.
Contact:
Contact John Adams
Website
Re: Identifying Unreal bits
  • Quote

Post by John Adams » Tue Jun 24, 2014 6:18 pm

Let me revisit this question; though I suppose this is not really Unreal Bits...

Fallout, you may not remember when you encountered Ysanna Griffinmarch (Blacksmith Instructor) in the beautiful town of Bordinar's Cleft back on 4/18/2014 - 4/23/2014, but this is for you.

Ysanna Griffinmarch, you visited on 4/18 when you were level 17. This NPCs level was 21.
Then you visited again on 4/22, you were level 20, and this NPC was now level 39.
Lastly, you visited again on 4/23, you were level 21, and this same exact NPC was now level 58.

Every single bit of this NPCs parameter data is identical, except the level. I would love someone to explain what's going on here, because globally, this is wreaking havoc on the world population. I have 3 of these in the same spot, with 3 different levels... but more importantly, I need to understand why this level is change >>for certain<< so we can emulate this behavior later.

Question: Was the instructors level chasing your Crafting level, by chance? Any other reason you can think for this to happen? (anyone)

Thank you
Top

Odinzz
Community Manager
Posts: 187
Joined: Fri Jan 31, 2014 9:22 pm
Location: Dirty Jersey
Re: Identifying Unreal bits
  • Quote

Post by Odinzz » Tue Jun 24, 2014 6:25 pm

i believe you are correct in assuming she was leveling to his skill... at tiers of 10 it goes from novice to amateur to apprentice to initiate to journeyman .
not sure why else the NPC would even have levels except for that reason.
I cant be certain but i hope this helps
The Platinum Order
Alliance of the Griffon
Brains and Brawn
Odinzz 55 Palladin
Psychosiss 54 Cleric ( So Close !)
Femic 55 Sorc
Dorinas 55 Blood Mage
And a mess load of alts!
Top

User avatar
falloutdc
Data Collector
Data Collector
Posts: 248
Joined: Sat Mar 29, 2014 10:04 am
Contact:
Contact falloutdc
Website
Re: Identifying Unreal bits
  • Quote

Post by falloutdc » Wed Jun 25, 2014 3:40 am

http://vgoemulator.net/index.php?p=projman&id=650
I remember my crafting session there doing the blacksmith beginner quest's but did not watch the level of the npc..I think the same happens with diplomacy I Believe some npc's scale with your level but i could be wrong here.. To many quest and npcs in my head
I try to upload my crafting logs this evening leveling from lvl 10 to lvl 21 in Khal and tursh hopefully this shed some light on this
Duplicates don't hurt ;) (tm John Adams 2014)
Image
Top

User avatar
John Adams
Retired
Posts: 4583
Joined: Wed Aug 28, 2013 9:40 am
Location: Phoenix, AZ.
Contact:
Contact John Adams
Website
Re: Identifying Unreal bits
  • Quote

Post by John Adams » Wed Jun 25, 2014 6:47 am

Okay, thanks for the feedback. This makes me think non-attackable NPCs in fact do not have level's that are notable (why should they need one?), so I have excluded this data from my parsings for now.
Top

TigerTiger
Posts: 99
Joined: Mon Oct 28, 2013 2:14 pm
Re: Identifying Unreal bits
  • Quote

Post by TigerTiger » Sun Jun 29, 2014 6:01 am

Hey John, do you want to commit the following table to the SVN?
m_PackageIndex

Code: Select all

0	EYE
1	HAIR_BANGS
2	HAIR_TOP
3	HAIR_BACK
4	HAIR_SIDES
5	HAIR_PONYTAIL
6	HAIR_FACE
7	ARM
8	BACK
9	CHEST
10	EAR
11	FACE
12	FEET
13	FINGER
14	HAND
15	HEAD
16	LEG
17	NECK
18	SHOULDER
19	WAIST
20	WRIST
21	TOOL
22	AXE
23	BOW
24	CLUB
25	CROSSBOW
26	DAGGER
27	FLAIL
28	HAMMER
29	MACE
30	POLEARM
31	STAFF
32	THROWN
33	SWORD
34	SHIELD
35	SPEAR
36	FIST
37	SPADE
38	KNIFE
39	MARTIALFIST
40	MARTIALSWORD
41	MARTIALSTAFF
42	FOCUS
43	BARD
500	MOUNT
501	IOD_MOUNT
600	TEST
601	FULLSUIT
For example 43 would correspond to the package BARD_ITEMS.uem
Some packages like SPADE_ITEMS.uem don't exist even though it is referenced in vgclient.exe
Last edited by TigerTiger on Mon Jul 28, 2014 7:17 am, edited 1 time in total.
Top


Post Reply

37 posts
  • Previous
  • 1
  • 2
  • 3
  • 4
  • Next

Return to “Content Development”

Jump to
  • Information
  • ↳   Announcements
  • ↳   Dev Chats
  • ↳   Events
  • Community
  • ↳   General Discussions
  • ↳   VGO Team Help Requests
  • ↳   Introductions
  • ↳   Game Features
  • ↳   Wish List
  • ↳   Off-Topic
  • Support
  • ↳   How-To's
  • ↳   General Support
  • ↳   Windows
  • ↳   Linux
  • Development
  • ↳   Content Development
  • ↳   Thestra Adventuring
  • ↳   Qalia Adventuring
  • ↳   Kojan Adventuring
  • ↳   Crafting/Harvesting
  • Bugs
  • ↳   Server Bugs
  • ↳   Server Bugs (Closed)
  • ↳   Content Bugs
  • ↳   Content Bugs (Closed)
  • ↳   Database Bugs
  • ↳   Tools Bugs
  • Board index
  • All times are UTC-07:00
  • Delete cookies
  • Contact us
Powered by phpBB® Forum Software © phpBB Limited
*Original Author: Brad Veryard
*Updated to 3.2 by MannixMD