Page 2 of 2
Re: Great News for Fan Age Players and Authors Alike!
Posted: Tue Oct 26, 2010 9:17 am
by ddb174
I imagine that it's PrpShop that's accidentally corrupting the files, because its ability to write Moulagain format hasn't been tested... until you did, I imagine ;)
You can get back the original files by running Step 2 again. If you do it in the same folder, it will only download the files that have changed, and thus be fast!
Re: Great News for Fan Age Players and Authors Alike!
Posted: Tue Oct 26, 2010 10:28 am
by N. Sigismund
ddb174 wrote:I imagine that it's PrpShop that's accidentally corrupting the files, because its ability to write Moulagain format hasn't been tested... until you did, I imagine

It worked for GlobalClothing...
What I noticed is that when you import a .DDS file over a normal MOULa file, it resets the low and high values of ModTime to 0. Maybe that's it?
Re: Great News for Fan Age Players and Authors Alike!
Posted: Tue Oct 26, 2010 11:42 am
by Christian Walther
ddb174 wrote:Okay, Drizzle29 and UamKiPlugin17 are on SVN now!
And it works – thanks!

Now I only need to figure out a way of getting myself a KI… and chat testing doesn’t work very well when sending an age chat message kills the game server…

I suppose that just isn’t implemented yet? Or am I doing anything wrong (such as missing to compile some classes that are only loaded by name, as I did the first time around)?
Since my casual mention doesn’t seem to have caught your attention, here’s my fix for sending the correct file length in the Auth2Cli_FileListReply (an apparently inconsequential bug):
- patch Show Spoiler
Code: Select all
Index: DrizzlePrp/src/moulserver/AuthServer.java
===================================================================
--- DrizzlePrp/src/moulserver/AuthServer.java (revision 2699)
+++ DrizzlePrp/src/moulserver/AuthServer.java (working copy)
@@ -315,7 +315,7 @@
FileListReply reply = new FileListReply();
reply.transId = request.transId;
reply.result = ENetError.kNetSuccess;
- reply.manifest = SecureDownloadManifest.getManifest(request.dir.toString(), request.extension.toString(), manager);
+ reply.manifest = SecureDownloadManifest.getManifest(request.dir.toString(), request.extension.toString(), manager, securefiles);
//reply.manifest = SecureDownloadManifest.getEmptyManifest(); //client crashes with manifest with no entries.
AuthServer.SendMsg(cs, reply);
}
Index: DrizzlePrp/src/moulserver/SecureDownloadManifest.java
===================================================================
--- DrizzlePrp/src/moulserver/SecureDownloadManifest.java (revision 2699)
+++ DrizzlePrp/src/moulserver/SecureDownloadManifest.java (working copy)
@@ -32,7 +32,7 @@
return r;
}
- public static SecureDownloadManifest getManifest(String folder, String extension, Manager manager)
+ public static SecureDownloadManifest getManifest(String folder, String extension, Manager manager, AuthServerSecureFiles securefiles)
{
SecureDownloadManifest r = new SecureDownloadManifest();
String path = manager.settings.getFileserverPath()+"/SecureDownload/";
@@ -49,7 +49,7 @@
{
Entry entry = new Entry();
entry.filename = new Str(folder+"\\"+file.getName());
- entry.filesize = (int)file.length();
+ entry.filesize = securefiles.GetEncrypted(file.getAbsolutePath()).length;
r.entries.add(entry);
}
}
And another one that has been bugging me, for good measure:
- patch Show Spoiler
Code: Select all
Index: DrizzlePrp/src/gui/CommandLine.java
===================================================================
--- DrizzlePrp/src/gui/CommandLine.java (revision 2699)
+++ DrizzlePrp/src/gui/CommandLine.java (working copy)
@@ -95,7 +95,7 @@
{
moulserver.Manager.StartServers(args[1], args[2], args[3]);
}
- else if(args[0].equals("-patachmoulbinary"))
+ else if(args[0].equals("-patchmoulbinary"))
{
moulserver.Patcher.PatchFile(args[1], args[2]);
}
Re: Great News for Fan Age Players and Authors Alike!
Posted: Tue Oct 26, 2010 12:18 pm
by ddb174
(Hmm... a modtime of 0 should be fine. But it would be normal for it to be okay on some files and corrupt other ones, because they have different object types.)
Thanks Christian! I've put those two patches on SVN. I have *no* idea how I never noticed the "-patachmoulbinary" thing!
Edit: Oh, and yes, I've never tried to send a KI message, and so it isn't implemented. But something like that is usually quite easy for me to implement, because the server itself doesn't do anything special.
Re: Great News for Fan Age Players and Authors Alike!
Posted: Thu Oct 28, 2010 12:05 am
by Karkadann
Instead of a linking book, I have a stone arch from my Relativity age (which by the way I really should start working on) would in be possible to create a stone arch that you can walk threw and end up in another age, or another sub world of the same age. if so How??
Re: Great News for Fan Age Players and Authors Alike!
Posted: Thu Oct 28, 2010 8:04 am
by diafero
One bug is unfortunately still present: I installed the "enabled" version of the Network Access package, and now it's telling me I am risking my security and so on. It should definitely not do that on each Drizzle startup after I deliberately decided that I want the access to be enabled.
EDIT: I just noticed that the KI plugin is using private xLinkMgr functions and variables that might change in future versions (which is why I marked them with a "_" at the beginning). And it intersects the xULM by replacing a core function. I will try to remember that should I need to change them, but I can not guarantee such unforseen API usage to be stable. I had some ideas about how the custom Relto books could be done better, long before this was released - but I am not yet sure when I have time and will to realize them.
I also wonder why I was not notified that these obviously internal APIs are required by the plugin.
Re: Great News for Fan Age Players and Authors Alike!
Posted: Thu Oct 28, 2010 9:28 am
by ddb174
Karkadann wrote:Instead of a linking book, I have a stone arch from my Relativity age (which by the way I really should start working on) would in be possible to create a stone arch that you can walk threw and end up in another age, or another sub world of the same age. if so How??
Yes, Huinexus does something like that. If you're talking about using UamVars to do that, it would require another another UamVar or two, but could certainly be done in a future version. The idea is to start with just these few items and increase them as things are needed.
diafero wrote:One bug is unfortunately still present: I installed the "enabled" version of the Network Access package, and now it's telling me I am risking my security and so on. It should definitely not do that on each Drizzle startup after I deliberately decided that I want the access to be enabled.
That's not a bug, especially not if people start saying things like "You need to install the enabled version of NetworkAccess to play this Age", because people might easily forget that they may be silently being spied on. This warning is an important part of reminding them that having NetworkAccess enabled puts them at that risk, and that there is no way for them to know. This warning makes sure they know.
diafero wrote:EDIT: I just noticed that the KI plugin is using private xLinkMgr functions and variables that might change in future versions (which is why I marked them with a "_" at the beginning). And it intersects the xULM by replacing a core function. I will try to remember that should I need to change them, but I can not guarantee such unforseen API usage to be stable. I had some ideas about how the custom Relto books could be done better, long before this was released - but I am not yet sure when I have time and will to realize them.
I also wonder why I was not notified that these obviously internal APIs are required by the plugin.
It doesn't replace the function; it appends to it. It's the cleanest way to do it without replacing components of the Offline-KI, which I don't want to do. I know that this API might change, but I would just update the Uam KI plugin to match in such a case (and release at the same time), but in practice, it shouldn't change often/ever (after all, the format the Offline-KI uses is still even the ULM one!). Ages obviously shouldn't use the Offline-KI API, as they should be future-proof, but this is another "(required!)" package that can just be updated.
Re: Great News for Fan Age Players and Authors Alike!
Posted: Tue Nov 02, 2010 11:41 am
by D'Lanor
Dustin, a few days ago I was doing some Python debugging of my own so I was keeping an eye open for the dreaded "Traceback" line. I could not help noticing one of yours.
(10/31 22:38:58) Traceback (most recent call last):
(10/31 22:38:58) File ".\_uamki\_UamMod_ReltoPages.py", line 149, in ReadPageInfo
(10/31 22:38:58) WindowsError: [Errno 3] The system cannot find the path specified: 'img/UamRelto/*.*'
Re: Great News for Fan Age Players and Authors Alike!
Posted: Tue Nov 02, 2010 3:35 pm
by ddb174
That particular exception is normal and is actually being caught and *then* printed, so there's no error here. But yeah, it's nice to be able to just search for any traceback, so I've committed a fix to SVN. (If you want the updated file, you can grab it here:
http://alcugs.almlys.org/trac/browser/d ... anager.pak )