Archive for category Uncategorized

GTA: SA Censor Remover Online AKA Conversion Hell

I often get requests for versions of my tools that will work on non-Windows operating systems, such as Linux and MacOSX.
Because I use delphi, which is primarily a Windows programming tool, this often isn’t practical or even possible.

A few months ago I set about thinking of ways I could provide the same tools and abilities to those who don’t run Windows or have restrictions set on what they can download. I eventually decided to recreate one of my more popular tools, GTA: SA Censor Remover, in an online edition.

This wasn’t as easy a task as I had first assumed, my PHP skills were a little rusty from years of neglect in favour of Windows application development and PHP is an inherently poor language for working with binary files. I could have deviated from my original intention and written the online version in Perl, but I’m not that much of a masochist and I’m much more familiar with PHP.
After a few hours I was able to knock up a basic version that worked fine with PS2 and PC saves, even with PHP’s poor file handling routines, but came against a huge stumbling block with the Xbox saves.

Xbox saves are protected by a digital signature, change even one byte and the signature is invalidated and the save will not load. Of course I know how to fix this signature but this is where PHP let me down immensly.

PHP is a loosely type language, this means it’s great for beginners but sometimes you need to be able to control the language and it’s variables precisely, which is exactly what I needed to do. For reference, Delphi is a strongly typed language and is much better for it in my opinion. I can also access raw memory directly with Delphi which makes creating digital signatures a breeze.

I spent hours trying different ways of representing the binary data I needed to fix the digital signature in the save, I trawled the PHP manual for hints and comments. I even asked an experienced PHP programmer who writes scripts for a living daily and he was unable to help me or offer anything I hadn’t tried already.
Eventually I gave up, I’d chosen the wrong tool for the job and had paid bitterly for it.

Last night I was intrigued to see that the makers of Delphi, Codegear, are planning a “Delphi for PHP” and this rekindled my interest in PHP. Looking for a project to start I remembered about the work I had done on GTA: SA Censor Remover Online and how I had left it to rot on my dev machine.
I decided that I couldn’t let this go to waste and was a perfect challenge to get my PHP skills back on track, after all if I couldn’t find the answer from the manual and experienced users of PHP than I’d have to find it myself.
Eventually after a few tests, all producing the wrong digital signature, I commented out all the existing code and returned to the basic task: Create a binary representation of a series of bytes and pipe this along with the raw file data to the required function.

It was a matter of minutes before I had a working function. I spent a few hours tweaking the code and making sure it worked properly, again having to fight PHP’s poor file handling tooth and nail, until the final product was ready for release.

It’s been a hellish struggle and at times I wondered if the task was even possible given the poor performance of PHP in this area and lack of information out there, even from PHP experts. I won’t be retro-fitting any of my other tools at this time but if the need arises, or another prgram is created that would bendfit from an online version, I’ve got a solid groundwork to enable access to my software to everyone, regardless of what operating system they use.

Tags: , , , , , ,

New save sharing communities arise, how do they fare?

With the advent of the Playstation 3 and the Nintendo Wii there’s been a couple of new sites pop up to support the save trading community.
I’ve been checking on two sites in particular and have the following opinions.

First up there’s PS3GameSaves.net

Missing out on the elusive .com domain hasn’t deterred these guys one bit and they’ve started to make decent inroads into building a community for sharing Playstation 3 and Playstation 2 saves, in the suitable PS3 format of course.
The site has a blossoming community forum and whilst there doesn’t appear to be much technical talk there’s a good vibe and a decent amount of trading going on with helpful users.

Unfortunately I can’t be as kind about the main site. The design and content smack of “my first website”. I’m sorry to be harsh guys but the site looks poor and the content is sparse and not organised efficiently. Top marks for putting a forum up to encourage the community but please, enlist the services of a designer and sort your main site out. At worst use a portal system to keep the site tidy and organised.
I also had some difficulty finding the site in Google as it doesn’t rank well for Playstation 3 game saves, something that should be worked upon if possible. But not all is lost as it ranks quite well for PS3 game saves.

Overall the site has a lot of potential, the forum is something that will keep the users coming back but the main site needs some serious work and was off-putting on my first visit.

Next up we have Wii Save.

In contrast to PS3 saves, Wiisave has a beautiful front end and ranks well for the obvious search query. I’ve not come across the RW::Download script before but it does it’s job perfectly here. Having the content on the front page makes it easy for users to see new additions and keeps the site looking fresh and alive.
Information seems easy to reach but I’m not a fan of the javascript drop-down menu for each system supported by the Wii. It appears that for each save on the site there is a corresponding entry in the menu for the game. Once more saves are uploaded this is going to become unworkable, can you imagine a menu with 200+ entries on it?

Whilst I really like the clarity of the front page and the easy access to information, the site isn’t without problems.
The only way to communicate with other users of the site appears to be via a comments system which allows you to add comments to each save uploaded.
This simply isn’t enough to foster a community and eventually the users will move elsewhere. At the very least the admin should install a free message board such as phpBB and hack/edit it to accept the current user base and make future signups exist on both the main site and the forum.
I’ve also noticed the use of images directly next to Google ads, this is against the Ad-Sense Terms and Conditions and a shady technique at best.

In conclusion, the content of the site and it’s simple layout are a winner here but the lack of community features will result in the site loosing out long term.

Tags: , , , ,

Tutorial series planned

There’s not many tutorials on save hacking out there and even less that apply to the recent consoles such as the PS2 and Xbox, I’m going to be working on a couple to help people start up. I’ll be concentrating on some older classics that can be picked up really cheaply if you don’t already have the game.

The first tutorial I’m planning is to recreate the infamous Antman create-a-skater from Tony Hawk’s Pro Skater 3, one of my favourite in the Tony Hawk series and a great introduction as to what can be done via save hacking.
I’ll also be making a tutorial for PSV Exporter so people who may not so familiar with the tools a lot of use on a daily basis can get a clear idea of it can be used for.

Tags: ,

How to get your money back from Paypal

Ever bought something from eBay only to find it’s a scam and Paypal have failed to get your money back? Read on, there’s still a chance you can get that money…

Paypal is probably the most popular way to purchase items on eBay or to transfer money; in fact eBay actively promotes Paypal as its preferred payment method.
Now Paypal is not a bank and as such is unregulated, if something goes wrong you are totally at the mercy of their procedures and staff.

Last year I purchased an item from eBay, I duly paid with Paypal believing I was safe and secure, if something went wrong I could depend on Paypal to return my money. I was wrong.

Something did go wrong, I never received the item and the seller ceased all contact once they had my money. I followed the eBay and Paypal guidelines to get the matter resolved but eventually I had to file a complaint about the transaction with Paypal. After the allotted time I was awarded the claim and I duly expected a refund to hit my account within days. It never happened. Paypal notified me that there weren’t any cleared funds in the scammers account, not much of a surprise there, and I would have to wait until there were some before I could get my money. They helpfully informed me that they had been able to recover £0.00 of the money I was owed.

I waited patiently. And waited some more. After a month or two I sent an email asking for a status update and if there was anything I could do to help. I was informed that there wasn’t and there was nothing Paypal could do until cleared funds entered the scammers Paypal account. Clearly this wasn’t going to happen and Paypal had effectively washed their hands of it.

Now here’s the bit you’ve been waiting for, how to get your money back from Paypal.

The money used to pay for the goods was taken directly from my bank account via my credit/debit card and then transferred to the scammers Paypal account from mine. Because of this I was able to take print outs of the Paypal pages covering my dispute, along with the email Paypal sent me, to my bank and ask for the money to be refunded. The bank spoke to their claims department on my behalf and warned me that I may have to fill in a claim form and helpfully made me copies of the documentation I had taken in should I need to post them off.

Today I received a letter from my bank confirming a deposit into my account of the money Paypal owe me. A Chargeback Analyst had investigated my claim and awarded it without any further questioning, a top service and exactly what I had expected.

Here’s the crucial part: Make sure all your Paypal purchases require Paypal to load the money from your bank account via your credit or debit card. This gives you the option of taking the matter to the bank if Paypal cannot claim your money back for you after you win a dispute. Your bank takes online fraud very seriously, more seriously than Paypal and should happily investigate any claim where Paypal has failed to reimburse you as long as the money was taken via debit or credit card.

So in future, if you want extra protection that Paypal cannot offer, clear your Paypal funds into your bank account and only then make the purchase so that money is taken from your card. It may cost you a small amount to do this each time but it’ll be worth it if you ever have a dispute and Paypal is unable to get your money back.

Be aware that Paypal may well fight your bank, especially in cases involving large sums of money, but if you’ve followed Paypals procedures and still haven’t had any success then talking to your bank is a good step to take.

Fragmented usernames, gamertags and profiles

I love online gaming.

I don’t get enough time to participate these days, nor do I own any of the “next gen” consoles, which is where I am led to believe the most enjoyable online experience can be found, particularly if you are like me and use your PC for work and your consoles for fun.

Earlier this week Sony opened up a service that allowed you to pre-book your online username/gamertag/persona (call it what you will) if the Playstation 3 hasn’t reached your country yet or you just don’t fancy paying the eBay prices for their latest toy.
I’m all for these services and decided to see if such a service was offered by Xbox Live. Apparently it is, so I duly entered my details only to find that my gamertag was already taken…

I’ve been using the online persona gothi since the 90′s, I’m pretty fortunate in that it’s an usual word (although at the time I was not aware of it’s religious connotations). I’ve made a name for myself by posting, and administrating, on many forums, creating websites, I’ve released hundreds of Xbox & PS2 saves, played in online tournaments, beta tested online PS2 games, written several widely used software programs and it’s even got to the point where some people think entering my username into a game makes you invincible. It doesn’t by the way, however using the cheat save I made for the Xbox version of XIII, which features my profile name, does.

I like to think I made myself known, I even own gothi.co.uk and the fact I cannot use my username, the one I have used for about a decade, on Xbox Live frustrates me.
I like how Xbox Live operates, one username for all games, but what do you do when your username is taken? Do I have any right to ask that the user of this name gives it up? I appear twice in the top 10 google results for gothi (not bad considering my username is a religous term), does all that give me enough leverage to say that “this is my online persona”?

As it stands both Microsoft’s and now Sony’s approach is reasonable but limited. You choose one name, but it is only unique to that system, and when a new system is released it can be mad scramble to get your name registered. In this case I clearly lost out on Xbox Live. To make matters worse, some games companies, seeing that users want one name across the systems, have created their own private database of usernames that allow you to have one name across their collection of games. Rather than improving matters this makes them worse as now there are even more private areas to register for and more chances to lose possession of your name. Without your name, and the reputation that follows it, who are you?

What I propose is a universal system where users can choose one name for all systems and games, regardless of publisher, designer or manufacturer.
By use of an open API games designers can verify ownership of a gamertag and other information, such as game specific data, can be stored on their own databases.

Is it too late for such a system? Maybe. I truly hope it isn’t and that some order can be brought to the chaos that is forming.

I’d like to know what others think of the fragmentation issue we’re in and how you see it in 5 years time…

Tags: , , , ,

Google snippets snipped away with filter

A recent Google search for view headers was a little suprising, not one page had any of the familiar snippets.

But if you repeat the search with the omitted results included all the snippets return…

(Your mileage may vary depending on browser, whether you are logged into a Google account or not and which data center you get)

Update
Looks like things have updated at Google as trying this again a few hours later I get the correct results complete with snippets and the logo of the day (Evard Munch birthday logo)

Tags:

Not every child will have a Christmas like this….

As the winter months roll in and we get closer and closer to Christmas the shop displays change to reflect the season.

I noticed this one as I walked into town, lets look at in it parts…

Already we know the display is meant to tug at our heart strings, this is a charity shop window after all…

Hmmmmmm…..
Ok, small child bent over a chair? Perhaps they’re hiding their eyes from something in anticipation?

Is that Santa holding a cane with evil glint in his eye??

It appears that this Christmas, this young one is going to get a major caning from Santa himself!

That’s right folks, not every child will have a Christmas like this at all!

White Van Man, back in style

“White Van Man” is a UK cultural disaster. He is usually aggressive, chavvy, of below average intelligence and a menace to those around him in general.

Bear that in mind…

In Ripon there is a ford, it is normally fine to cross in a car or van although in the colder months after a good rain only an idiot would cross it (see where this is heading?).
Today it looked like this:


Pretty nasty you’ll agree.

On way to to the bridge to cross the ford I notice several fire trucks on both sides and of course my interest perks. One fireman is attached to the front of a truck by a rope and is about to head backwards into the raging river that the ford has become because of this:

That’s right, White Van Man and his buddy with no thought to, well anything that doesn’t involve fags, cheap booze and ugly girls, has plowed straight into the ford only to find that his ride of choice is no match for the torrent of water now holding his van in place.

Muppet boy had to call the fire brigade to rescue him.

An hour later I walked past again to find the two lads rescued, dry but unable to leave, by the looks of it the engine had been flooded….

What’s more worrying is that these lads and their like are breeding faster than any other in the UK population, I worry about the future of this country sometimes.

Adsense in Blogger Beta templates

The Inside AdSense team have just released an Activation Demo showing you how to add AdSense code to your Blogger/Blogspot template however they insist you revert to a classic template to do this.

This isn’t practical or desirable for some, including myself, so I’ll show you how to do it in the new and funky Beta templates, as seen on this very blog.

Although the beta tools allow you to add a block of AdSense Ads to the template in a nice web 2.0 style, you cannot add them to certain sections, for example between the post header and body text, as seen on this blog. For that level of control you need to manually edit the template itself and that’s what I’m going to demonstrate today.

First you need to generate your AdSense code, for this example I’m going to add a banner to the top of my blog, just underneath the page header/title.

First go to the settings screen of your blog and hit the template tab. We want to be editing the html, so hit the link. For ease of use you might want to download the template to your PC but in this example we’ll use the online editor.
Expand the widget templates (this allows you to put the AdSense anywhere on your blog) code and locate the header section like so:

Now scroll down to the last </div> and paste your AdSense code:

Now here comes the magic! (So to speak.) If you try to use the template like this most of the AdSense code will be stripped away and your ads will not show at all!
This is because AdSense makes use of the html comment marker and html comments are stripped out in the beta templates, taking the majority of our AdSense code with it!
To get round this (and so we don’t have to revert our template) we change the < and > of the AdSense code that uses the html comment marker into their respective HTML entities: &lt; and &gt; as seen highlighted in red in the picture:

Now hit the preview button to check on the brand new ads you’ve just installed:

Ok, so the positioning could do with a tweak, as could the colour scheme, but now you know the hardest part, getting the ads to show, you can tweak it til your hearts content! Don’t forget to save your template once you have positioned the ads to your liking.

Tags: , ,

PCSX2 memory card format revisited

PCSX2 is a PS2 emulator, it features memory card support and produces .ps2 files which are a raw image of the memory card, here’s what I had to say about them last time:

  • The file is a raw image of a PS2 memory card.
  • I believe it’s a similar system to FAT12/16, it’s got a similar FAT usage from my quick scan.
  • Every 512 bytes is a 16 byte footer, I assume it’s some sort of checksum

Spurred on by an email I recieved earlier I decided to do some more digging, here’s some prelimerary findings:

(all addresses include the 16 byte footers)

  • .PS2 file always has Sony PS2 Memory Card Format 1.2.0.0 as it’s header.
  • The FAT table starts at 0×2520 , uses word(tbc?) for each entry
  • Clusters start at: 0xA920
  • Clusters are 0×200 in size.
  • First cluster is file entry for . (2E in hex), an entry for .. also exists
  • A file/directory entry occupies an entire 0×200 byte cluster and is broken down as such:
    The first int is the file/folder attribute
    second int is the file size.
    I belive the datetime is next.
    I belive the fat entry (word or int?) to be located 0×10 bytes in.
    The filename is 0×40 bytes in and 0 terminated.
  • The first cluster I found containing the file data was always located at 0xB9A0 in the files I looked at.
  • As with other FAT implementations 0xFFFF appears to be used to indicate end of chain (EOC) in the FAT table

Using the above information it should be possible to construct a basic tool to extract files from the .ps2 file.

I’ve been thinking about the 16 byte footer and believe it may be the attributes of the preceeding sector rather than a checksum. a sector contain all 00′s and a sector containing all FF’s both have the same footer…

Please note all information above is based on a 10 minute poke around the file in a hex editor, corrections and updates are welcome!

Tags: ,