Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Aircraft models in Ace Combat X, and modding possibilities.
01-13-2017, 05:51 PM (This post was last modified: 01-13-2017 05:54 PM by Broth3r.)
Post: #1
Aircraft models in Ace Combat X, and modding possibilities.
Apologies if this isn't the proper forum for it, but I figured this was a technical matter that fell outside the normal compatibility thread.

Though Ace Combat X reuses a lot of assets from its PS2 brethren, Ace Combat 04 and 5, it had to downscale the quality of its aircraft models. Below are examples of one in the pre-mission hangar, and in flight.


.jpg  ULUS10176_00001.jpg (Size: 275.22 KB / Downloads: 966)

.jpg  ULUS10176_00002.jpg (Size: 401.42 KB / Downloads: 837)

There is, however, an aircraft records screen, where one see their individual statistics for each aircraft and examine them in 360º. Thing is, the quality of the aircraft models in this screen is remarkably better.


.jpg  ULUS10176_00003.jpg (Size: 240.72 KB / Downloads: 778)

Plenty more examples of this disparity in this video. As I mention in it, I believe the models were downscaled for performance, as even then ACX suffered from occasional frame drops, but retained in the aircraft records page as a sort of Forza-style Autovista.

But more to the point, the hardware limitations are no longer an issue on the emulator. And considering that disparity is not present in the PS2 games, and what ACX shared with them, I think it would be possible to replace the downscaled flyable models with those.

Sadly, however, that's where my expertise ends. I simply have no idea where to even begin. Thus, I would like to ask if anyone could steer me in the right direction. Thank you.
Find all posts by this user
Quote this message in a reply
01-13-2017, 07:35 PM (This post was last modified: 01-13-2017 11:53 PM by LunaMoo.)
Post: #2
RE: Aircraft models in Ace Combat X, and modding possibilities.
On my blind eye I don't see any model difference. Textures however are different, definitely lower res in-game most likely due to memory limitations and for that you can just use texture replacement.

You'll find options for that feature under tools->dev tools->texture replacement, you can also read through this thread to understand this feature a bit better maybe see some examples as well. Due to how psp games work it might not always be easy, but it does not have any silly size limits and if you have some graphic skills you can even make completely new, HD textures.

Edit: actually just checked the demo of "Ace Combat X2 Joint Assault" and if the full game works alike, this might be easiest game to replace textures I saw till now, since all of them are proper psp sizes so ppsspp can easily recognize them by texture hash just replacing address with wildcard;p.
Plane textures at least those in-game(demo doesn't have high res ones) might be a bit hard to notice, they're 256x256 size and almost fully transparent with just edges and details drawn, I was lazy and changed color balance of whole texture to quickly test it and noticed that it made all surface reflective, so I guess texture might be applying reflection to everything of same color as some part of it or just to anything which is colored, since it doesn't have much color otherwise.

http://forums.ppsspp.org/showthread.php?tid=6594 - Custom PPSSPP Shaders!
http://forums.ppsspp.org/showthread.php?tid=3590&pid=117172#pid117172 - simple CE scripts to help creating CWCheats,
https://github.com/LunaMoo/PPSSPP_workarounds - CWCheat workarounds.
Find all posts by this user
Quote this message in a reply
01-14-2017, 09:25 AM
Post: #3
RE: Aircraft models in Ace Combat X, and modding possibilities.
Yes, my apologies, it was a matter of textures. But thank you, because indeed, it works! Went and tested it, and it works flawlessly. The hangar and in-mission textures are actually separate, slightly different files[/url], but it's just a matter of replacing both. Hell, I even managed to import textures from Joint Assault to ACX; even though the texture format is different (unusually transparent as you say; probably alpha channels, are JA's engine supports reflections far better), it ports flawlessly.

.jpg  Untitled.jpg (Size: 367.97 KB / Downloads: 703)

The problem, however, lies in the fact this only works for one mission at a time. For whatever god-forsaken reason, the game uses (or at least dumping generates) different hangar and in-mission texture files for each of the 31 missions, even though they're exactly the same - making manual replacement entirely unpractical. Would there be a way to fetch and replace all of those exactly similar files?

PS: No linking to imgur and no pictures above 500KB - it becomes difficult to display stuff.
Find all posts by this user
Quote this message in a reply
01-14-2017, 12:31 PM (This post was last modified: 01-14-2017 12:31 PM by LunaMoo.)
Post: #4
RE: Aircraft models in Ace Combat X, and modding possibilities.
As mentioned you just have to use wildcards for the address part to avoid duplicates since the address changes every time.

File name generated while dumping textures have 24 hexadecimal digits:
8 address followed by 8 clut hash(pallete) and 8 texture hash

So let's say 1 texture get's dumped multiply times like this:
09aab6d0053625c443978c4d
0980ead0053625c443978c4d
As you can see first 8 digits are the only ones changing, this means address changes, to deal with it, open "textures.ini" file(best create it from UI) and under [hashes] place those 24 digits replacing first 8 with 0's, then assign some file to it, here's how it looks for demo I used:
Code:
# This file is optional
# for syntax explanation check:
# - https://github.com/hrydgard/ppsspp/pull/8715
# - https://github.com/hrydgard/ppsspp/pull/8792
[options]
version = 1
hash = quick

[hashes]
00000000053625c443978c4d = planes/F4EPhantomII.png
[hashranges]

And ppsspp now replaces all those textures with F4EPhantomII.png stored in planes subfolder just to organize it.

Usual problem many games have is textures are in non psp sizes and carry other data which changes texture hash sometimes even every frame, this is not a problem here, so yeah it's really nice game to use texture replacement with.

About links, you should be able to post them after having 8 posts or so, also our forum seems to have some problems recently, have to open attachments instead of just viewing them in same page O.o annoying.


~
BTW, saw you had problem with this, so if you want a hint about unlocking 60fps, in ppsspp disassembly try finding:

[Image: LEfjscE.jpg]

and change slti v0,v0,0x2 to slti v0,v0,0x1 or just nop that highlighted branch;p, this will wakeup thread every frame instead of every other resulting in 60fps.
(that screenshot is from demo, so code will be at different address, might even look differently, but sceKernelWakeupThread is the important part to follow, basically you want to wake up thread every frame)

This will run the game at double speed;p, so you will still have to find some speed modifier, potentially having to change speed of different parts and timers separately, it's annoying and often leaves some bugs even after lots of work, so I really have no patience for it, good luck if you do;3.

http://forums.ppsspp.org/showthread.php?tid=6594 - Custom PPSSPP Shaders!
http://forums.ppsspp.org/showthread.php?tid=3590&pid=117172#pid117172 - simple CE scripts to help creating CWCheats,
https://github.com/LunaMoo/PPSSPP_workarounds - CWCheat workarounds.
Find all posts by this user
Quote this message in a reply
01-16-2017, 02:03 AM
Post: #5
RE: Aircraft models in Ace Combat X, and modding possibilities.
Thank you! I hadn't understood the purpose of wildcards at first. Got them up and running for all missions - it is indeed quite easy, once I got past my utter lack of knowledge on the subject.

Before I start massdumping (gonna make a texture pack), one more question: what texture filtering/scaling should I do it with? Doesn't seem like I can disable filtering, which will sadly lead to double filtering.

As for your help with 60FPS research, again, thank you so much. However, assembly is simply beyond my league, for the time being at least - I can't make heads or tails of it. If you don't mind, I'll forward the info to the AC community, perhaps we'll have someone savvy in the midst.
Find all posts by this user
Quote this message in a reply
01-19-2017, 08:03 PM
Post: #6
RE: Aircraft models in Ace Combat X, and modding possibilities.
If you use texture scaling, textures are dumped with it, so if you want clear textures, disable upscaling and remove already dumped textures affected by it, then reload the game in place where they show up. PPSSPP should skip scaling replaced elements, so it shouldn't really double, then again most scaling algorithms can be used on top of each other, so it really doesn't matter.

What matters through is that upscaling filters never really look great with all of the graphics in the first place, so for best results you really have to spend some time to re-draw or at least correct some details and shapes, it doesn't always need an artist, sometimes using simple geometry and/or grabbing some free graphics of the net is enough. Maybe even more stuff can be replaced without much skills, like maps itself if they're based on real places, could be replaced by some higher res satellite pics. It all takes time through, so probably not worth unless you get help from some active community if this game/series has one.

As for 60fps stuff, in case you missed it, Kabuto_Kun replied to you in his lenghty post linking to this, so most of the work on it already done in the past. But yeah correcting the speed of everything is the bothersome and time consuming part about making such patches and seems like that one will also need more work.

http://forums.ppsspp.org/showthread.php?tid=6594 - Custom PPSSPP Shaders!
http://forums.ppsspp.org/showthread.php?tid=3590&pid=117172#pid117172 - simple CE scripts to help creating CWCheats,
https://github.com/LunaMoo/PPSSPP_workarounds - CWCheat workarounds.
Find all posts by this user
Quote this message in a reply
01-20-2017, 01:30 AM (This post was last modified: 01-20-2017 01:35 AM by Broth3r.)
Post: #7
RE: Aircraft models in Ace Combat X, and modding possibilities.
I did see that - shame on me for not finding it on my own, but it doesn't help the forum's search function is down. Solitarius did quite a lot of work, though - right now, the only game-critical issue with the enemy aircraft movement speed, as player movement, missiles speed, timers, voice and music are all running accurately thanks to his/her fixes.

I posted a thread on the AC subreddit asking for help with the matter, but sadly, got nothing to show for it yet. Hopefully that'll change.

As for textures, right now I'm just gunning for a straight replacement of the in-flight ones with the higher resolution versions from the aircraft records (and the best from JA), will probably release that as a pack pretty soon. For whatever godforsaken reason though, there's one texture (F-4E #3 in-flight) I just can't dump no matter what. Wiped the new textures folder, still nothing. No idea what's going on there...
Find all posts by this user
Quote this message in a reply
01-20-2017, 04:59 AM
Post: #8
RE: Aircraft models in Ace Combat X, and modding possibilities.
Hmm, if you're using build older than v1.3-194-g17fc373, try latest from buildbot, as the issue fixed in the mentioned version could stop some textures from being dumped, through I kind of doubt that's the case since didn't saw anything using affected address range in the demo.

It could also be that the plane you can't dump just reuses texture you already dumped for other version of the plane, maybe with different additions on smaller textures that changes how it looks.
Or you could be searching for a plane shape and some textures could be packed more efficiently and not actually resemble a plane;3. To get a better view what texture you should be searching for, on windows at least you can use GE debugger (ctrl+G or under debug menu) and then use skip texture to see step by step what objects shows up after each texture, you could also use step prim which would highlight on red both part of the texture from and preview of the screen where things are being drawn. This will also give you better idea of some other shapeless textures like canopy or some effects if you plan to recolor or enhance them as well.

http://forums.ppsspp.org/showthread.php?tid=6594 - Custom PPSSPP Shaders!
http://forums.ppsspp.org/showthread.php?tid=3590&pid=117172#pid117172 - simple CE scripts to help creating CWCheats,
https://github.com/LunaMoo/PPSSPP_workarounds - CWCheat workarounds.
Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump: