Commit f6824490 authored by diafero's avatar diafero

Merge remote-tracking branch 'git-svn'

parents 3a63bab6 9e9d2bc5
This diff is collapsed.
......@@ -4,8 +4,8 @@ build.xml.stylesheet.CRC32=be360661
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
nbproject/build-impl.xml.data.CRC32=849604c4
nbproject/build-impl.xml.script.CRC32=09610484
nbproject/build-impl.xml.stylesheet.CRC32=0c01fd8e@1.43.1.45
nbproject/build-impl.xml.script.CRC32=51912120
nbproject/build-impl.xml.stylesheet.CRC32=c6d2a60f@1.56.1.46
nbproject/profiler-build-impl.xml.data.CRC32=5483337e
nbproject/profiler-build-impl.xml.script.CRC32=abda56ed
nbproject/profiler-build-impl.xml.stylesheet.CRC32=42cb6bcf
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package auto;
/**
*
* @author Dustin
*/
import shared.FileUtils;
import shared.b;
import java.util.Vector;
public class FindSdlInDump
{
public static void FindSdlInDump(String dumpfile, String outfolder)
{
//read dump file
byte[] dump = FileUtils.ReadFile(dumpfile); //could be quite large; hundreds of MB.
//find where "STATEDESC" occurs.
byte[] statedesc = new byte[]{'S','T','A','T','E','D','E','S','C'}; //it's always caps in mqo
//FileUtils.ReadFileAsString(dumpfile)
Vector<Integer> offsets = b.findBytes_All(dump, statedesc);
//do each STATEDESC.
int curpos = 0;
for(int offset: offsets)
{
if(offset>curpos) //don't include this statedesc if it was already handled.
{
//find previous non-text char and next non-text char.
int start = findPrevNonText(dump, offset);
int end = findNextNonText(dump, offset);
curpos = end;
byte[] curSdlText = b.substr(dump, start+1, end-start-1);
String curSdlStr = b.BytesToString(curSdlText);
//write to file.
FileUtils.WriteFile(outfolder+"/"+Integer.toString(start) +".sdl.txt", curSdlText);
int dummy=0;
}
}
//find the sdl filenames
byte[] sdlslash = new byte[]{'s','d','l','/'};
byte[] dotsdl = new byte[]{'.','s','d','l'};
Vector<Integer> offsets2 = b.findBytes_All(dump, sdlslash);
//String names = "";
java.util.LinkedHashSet<String> names = new java.util.LinkedHashSet<String>();
for(int offset: offsets2)
{
int end = b.findBytes_Once(dump, dotsdl, offset);
byte[] name = b.substr(dump, offset+4, end-offset-4);
String namestr = b.BytesToString(name);
//names += namestr + "\n";
names.add(namestr);
}
String namereport = "";
for(String name: names)
{
namereport += name + "\n";
}
FileUtils.WriteFile(outfolder+"/names.txt", b.StringToBytes(namereport));
}
private static final int findPrevNonText(byte[] bs, int offset)
{
while(isCharText(bs[offset]))
{
offset--;
}
return offset;
}
private static final int findNextNonText(byte[] bs, int offset)
{
while(isCharText(bs[offset]))
{
offset++;
}
return offset;
}
private static final boolean isCharText(byte b)
{
//if(b==9 || b==10 || b==13) return true;
//if(b>=32 && b<=126) return true;
//return false;
return b==9 || b==10 || b==13 || ( b>=32 && b<=126 );
}
}
......@@ -17,7 +17,7 @@ public class CommandLine
{
m.msg("Welcome to Drizzle!");
m.msg(" (Any of these commands can be compounded into a list, e.g. '-version -prpdiff c:/source.prp c:/dest.prp -help')");
m.msg(" Misc:");
m.msg(" Information:");
m.msg(" -version ->Shows Drizzle's version.");
m.msg(" -help ->This help screen.");
m.msg(" -listgamenames ->Lists the possible options for 'gamename' arguments in other commands.");
......@@ -58,6 +58,12 @@ public class CommandLine
m.msg(" -removepythonoverrides c:/pakfolder c:/outputfolder overriddenpakname.pak gamename ->Removes the entries from a .pak file, which have overrides in other files.");
m.msg(" -listpak c:/pakfile.pak gamename ->Lists the pyfiles that are present in the given .pak file.");
m.msg(" -diffpaks c:/origpakfile.pak gamename c:/newpakfile.pak gamename ->Compares two .pak files.");
m.msg(" Misc:");
m.msg(" -findsdl c:/dumpfile.dat c:/outputfolder");
}
else if(args[0].equals("-findsdl"))
{
auto.FindSdlInDump.FindSdlInDump(args[1], args[2]);
}
else if(args[0].equals("-simpledistill"))
{
......
......@@ -414,7 +414,7 @@
</Component>
<Component class="shared.State.TextfieldState" name="textfieldState38">
<Properties>
<Property name="text" type="java.lang.String" value="http://dusty.homeunix.net/uru-ages/"/>
<Property name="text" type="java.lang.String" value="http://myst.dustbird.net/uru-ages/"/>
<Property name="enabled" type="boolean" value="false"/>
<Property name="name" type="java.lang.String" value="uamServer2" noResource="true"/>
</Properties>
......
......@@ -173,10 +173,7 @@ public class Gui extends javax.swing.JFrame {
if(Main.javaversion2<1.6) m.warn("Your version of java seems to be older than 1.6; some things might not work.");
//if(Main.os.toLowerCase().startsWith("windows") && Main.osversion2>5.1) m.warn("You appear to be running Windows Vista or Windows Seven. Uru has a bug that will require a workaround, see http://dusty.homeunix.net/wiki/Drizzle for details.");
//if(Main.os.toLowerCase().startsWith("windows") && Main.osversion2>5.1)
if(Main.isVistaPlus())
{
m.msg("You appear to be running Windows Vista or Windows Seven. Uru has a bug that will require a workaround, see http://dusty.homeunix.net/wiki/Drizzle#Vista_and_above for details.");
}
//try{
//java.net.URL url = this.getClass().getResource("Image2.png");
//javax.swing.ImageIcon image = new javax.swing.ImageIcon(url,"");
......@@ -340,16 +337,32 @@ public class Gui extends javax.swing.JFrame {
//if(!uru.moulprp.Typeid.validateTriplets()) m.err("Triplets not valid!");
//Load Settings:
//this.loadsettings();
//dosavesettings = true;
shared.State.AllStates.loadandpush(settingsfile);
//shared.State.AllStates.loadandpush(settingsfile);
boolean result_loadsettings = shared.State.AllStates.load(settingsfile);
//settings overrides:
if(shared.State.AllStates.getStateAsString("uamServer2").equals("http://dusty.homeunix.net/uru-ages/"))
shared.State.AllStates.setState("uamServer2", "http://myst.dustbird.net/uru-ages/");
if(result_loadsettings) shared.State.AllStates.pushOutStates();
//language stuff:
pushlanguage(true);
//String helpstr = shared.GetResource.getResourceAsString("/gui/help.txt");
//jTextArea5.setText(helpstr);
shared.translation.registerResourceString("/gui/help.txt", jTextArea5);
//Permissions check not needed since permissions are now checked directly.
/*if(Main.isVistaPlus())
{
m.msg("You appear to be running Windows Vista or Windows Seven. Uru has a bug that will require a workaround, see http://myst.dustbird.net/wiki/Drizzle#Vista_and_above for details.");
}*/
SetBackgroundColour(true);
//initialise plugins
......@@ -1096,7 +1109,7 @@ public class Gui extends javax.swing.JFrame {
jPanel42.add(jLabel35);
jLabel35.setBounds(10, 30, 70, 16);
textfieldState38.setText("http://dusty.homeunix.net/uru-ages/");
textfieldState38.setText("http://myst.dustbird.net/uru-ages/");
textfieldState38.setEnabled(false);
textfieldState38.setName("uamServer2"); // NOI18N
textfieldState38.addActionListener(new java.awt.event.ActionListener() {
......@@ -4441,6 +4454,7 @@ public class Gui extends javax.swing.JFrame {
private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton6ActionPerformed
m.err("this is an error");
m.warn("this is a warning");
if(true) throw new RuntimeException("this is an exception");
//uam.GuiModal uamform = new uam.GuiModal(null, false, null);
//Object filechooser = shared.GuiUtils.getJFileChooser();
//shared.translation.printStringsForAllGuiForms();
......
......@@ -41,10 +41,12 @@ public class Main extends javax.swing.JFrame {
static public Runnable debugcheck;
static String jarpath;
static File thisJarsFile;
static long id = shared.RandomUtils.rng.nextLong(); //just a random id for this instance of Drizzle
//settings
static final boolean updateenabled = true;
static int requestedheapsize;
static final boolean debugupdate = false;
public static boolean isVistaPlus()
......@@ -58,12 +60,53 @@ public class Main extends javax.swing.JFrame {
public static void main(String[] args)
{
//shared.GuiUtils.getOKorCancelFromUserDos(m.trans("a"), "b");
//This will work for other threads as well as this one.
//System.out might be redirected, and we can't unset it, because this might not be terminating the app.
//For thread names, "main" is used while initializing, and "AWT-EventQueue-<<something>>" may be used if initialized by a button press.
//If unset, it simply prints to stderr, so let's do that anyway.
java.lang.Thread.setDefaultUncaughtExceptionHandler(new java.lang.Thread.UncaughtExceptionHandler() {
public void uncaughtException(Thread t, Throwable e) {
String threadname = t.getName(); //"main" is the main thread.
String estring = shared.ExceptionUtils.ExceptionToString(e);
String msg = "Exception in thread: \""+threadname+"\"\n"+estring;
//System.err.println(msg);
m.err(msg);
if(threadname.equals("main"))
{
javax.swing.JOptionPane.showMessageDialog(null, msg, "Uncaught Exception", javax.swing.JOptionPane.ERROR_MESSAGE, null);
}
}
});
//try
//{
main2(args);
//}
//catch(Exception e)
//{
// System.out.println("exception 3 caught!");
// javax.swing.JOptionPane.showMessageDialog(null, "message 3", "title", javax.swing.JOptionPane.ERROR_MESSAGE, null);
//}
}
public static void main2(String[] args)
{
//exception text:
//try{
//if(true) throw new RuntimeException("hi");
//}catch(Exception e){
// System.out.println("exception 1 caught!");
// javax.swing.JOptionPane.showMessageDialog(null, "message 1", "title", javax.swing.JOptionPane.ERROR_MESSAGE, null);
//}
debug("New Drizzle instance started...");
//find memory info:
//int requiredheapsize = 800; //900; //all Simplicity works with 400 on Win32.
int requiredheapsize = 710; //was 720, but Diafero found that it was reported as lower by Linux.
requiredmemory = requiredheapsize*1024*1024;
requestedheapsize = (int)(requiredheapsize*1.1); //1.01 is approximately correct, but lets leave lots of space.
requiredmemory = 600*1024*1024; //We need 600MB to start normally.
requestedheapsize = 800; //We will ask for this many MB when launching Drizzle.
try{
maxmemory = Runtime.getRuntime().maxMemory();
}catch(Exception e){}
......@@ -81,11 +124,14 @@ public class Main extends javax.swing.JFrame {
//find updater info:
String isupdaterstr = System.getProperty("Drizzle.IsUpdater","false");
boolean isUpdater = Boolean.parseBoolean(isupdaterstr);
debug("Maxmemory: "+Long.toString(maxmemory)+" Requiredmemory: "+Long.toString(requiredmemory));
debug("isLauncher: "+Boolean.toString(isLauncher)+" isUpdater: "+Boolean.toString(isUpdater));
//find path to this jar:
jarpath = shared.JarUtils.GetJarPath(Main.class);
if(jarpath==null) m.err("Jarpath is null.");
thisJarsFile = new File(jarpath);
debug("thisJarFile: "+jarpath);
//check if a new version has been downloaded, and install it, if so.
PerformUpdate(args,thisJarsFile.getParent(),false); //will halt the JVM if updated.
......@@ -110,6 +156,7 @@ public class Main extends javax.swing.JFrame {
try{
//copy self to Drizzle.jar
debug("Trying to overwrite Drizzle.jar from main...");
shared.FileUtils.DeleteFile(genericJar, true);
if(shared.FileUtils.Exists(genericJar)) throw new shared.uncaughtexception("Drizzle.jar isn't deleted yet.");
shared.FileUtils.CopyFile(thisJarsFile.getAbsolutePath(), genericJar, true, false, true);
......@@ -117,6 +164,7 @@ public class Main extends javax.swing.JFrame {
break;
}catch(Exception e){
debug("Error while updating Drizzle. It seems Drizzle.jar did not close.");
m.err("Error while updating Drizzle. It seems Drizzle.jar did not close.");
e.printStackTrace();
}
......@@ -124,6 +172,7 @@ public class Main extends javax.swing.JFrame {
if(numtries>numretries)
{
debug("Giving up on Drizzle.jar overwriting...");
boolean ok = shared.GuiUtils.getOKorCancelFromUserDos(m.trans("Please make sure there are no other copies of Drizzle running, and hit OK to try again."), m.trans("Problem updating")); //This never gets displayed for some reason.
if(!ok) break;
}
......@@ -142,6 +191,7 @@ public class Main extends javax.swing.JFrame {
}
else //start normally
{
debug("Normal start...");
try{
//javaversion = System.getProperty("java.version");
javaversion = System.getProperty("java.specification.version");
......@@ -220,7 +270,15 @@ public class Main extends javax.swing.JFrame {
{
public void run()
{
//org.jvnet.substance.SubstanceLookAndFeel.setSkin(new org.jvnet.substance.skin.ModerateSkin());
//exception test:
//try{
//if(true) throw new RuntimeException("hi");
//}catch(Exception e){
// System.out.println("exception 2 caught!");
// javax.swing.JOptionPane.showMessageDialog(null, "message 2", "title", javax.swing.JOptionPane.ERROR_MESSAGE, null);
//}
//org.jvnet.substance.SubstanceLookAndFeel.setSkin(new org.jvnet.substance.skin.ModerateSkin());
guiform = new Gui();
if(debugcheck!=null) debugcheck.run();
//java.net.URL url = this.getClass().getResource("Pterosaur2b4-16.png");
......@@ -277,6 +335,15 @@ public class Main extends javax.swing.JFrame {
String to = installDir+"/Drizzle.jar";
shared.FileUtils.CopyFile(from, to, false, false, true);
}*/
debug("Performing Update...");
debug("firstInstall: "+Boolean.toString(firstInstall));
debug("doupdate: "+Boolean.toString(doupdate));
debug("hasDrizzleExe: "+Boolean.toString(info.hasDrizzleExe));
debug("maxjar: "+info.maxjar);
debug("installDir: "+installDir);
debug("launchUpdater: "+info.launchUpdater);
//save the settings file if applicable. (Drizzle28 added this save)
if(doupdate)
......@@ -290,6 +357,7 @@ public class Main extends javax.swing.JFrame {
{
//create the Drizzle.jar file if it doesn't exist, even when we are not doing an update: (to fix the problem where installing DrizzleY from DrizzleY results in it not being considered an update, and thus Drizzle.jar not getting created.)
//if launchUpdater is null, then we're not dealing with an 'installed' Drizzle situation anyway.
debug("Attempting to overwrite Drizzle.jar...");
String from = info.maxjar;
String to = installDir+"/Drizzle.jar";
FileUtils.CopyFile(from, to, false, false, true);
......@@ -355,6 +423,7 @@ public class Main extends javax.swing.JFrame {
fullcommand[command.length+i] = args[i];
}
debug("Calling updater...");
Process proc = Runtime.getRuntime().exec(fullcommand);
//don't wait for this process, terminate now.
......@@ -387,6 +456,7 @@ public class Main extends javax.swing.JFrame {
private static void LaunchDrizzle(String drizzlefilename, String[] args, int requestedheapsize)
{
debug("Launching another Drizzle...");
try
{
/*if(args.length>0)
......@@ -486,7 +556,7 @@ public class Main extends javax.swing.JFrame {
}
private static VersionsInfo FindUpdatedDrizzleJar(File installDir)
{
String launchUpdater = null;
//String launchUpdater = null;
//String jarname = thisJarsFile.getName();
//if(jarname.equals("Drizzle.jar"))
//{
......@@ -545,4 +615,14 @@ public class Main extends javax.swing.JFrame {
//we only tried; it's no big deal if it fails.
}
}
private static void debug(String msg)
{
if(debugupdate)
{
String time = shared.DateTimeUtils.GetSortableCurrentDate();
String line = Long.toString(id)+": "+time + ": "+msg + "\n";
shared.FileUtils.AppendText("C:\\DrizzleDebug\\debug.log", line);
}
}
}
......@@ -11,7 +11,7 @@ package gui;
*/
public class Version
{
public static final int version = 30;
public static final int version = 31;
public static final boolean debug = false;
private static String javaver;
......
......@@ -143,7 +143,7 @@ MagiQuestOnline{->}MagiQuestOnline
Warning: {->}Warnung:
Ignoring: {->}Ignoriere:
Get Latest List{->}Lade neueste Liste herunter
( Help can be found under the "Help" tab, or detailed help can be found at http://alcugs.almlys.org/Drizzle ){->}( Hilfe kann im "Hilfe" Bereich oder in detaillierterer Weise unter http://dusty.homeunix.net/wiki/Drizzle gefunden werden. )
( Help can be found under the "Help" tab, or detailed help can be found at http://alcugs.almlys.org/Drizzle ){->}( Hilfe kann im "Hilfe" Bereich oder in detaillierterer Weise unter http://myst.dustbird.net/wiki/Drizzle gefunden werden. )
Ages:{->}Zeitalter:
Versions:{->}Versionen:
Download{->}Download
......@@ -171,7 +171,7 @@ Load last saved Age list at startup.{->}Weltenliste beim Starten laden.
Download most recent Age list at startup.{->}Die aktuellste Weltenliste beim Starten herunterladen.
Automatically download list?{->}Automatisch Liste herunterladen?
Info:{->}Info:
<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://alcugs.almlys.org/Drizzle</html>{->}<html>Dieser Bereich dient dem Konvertieren von MystV/Moul/Crowthistle Dateien, um deren Welten in Uru zu spielen. Sieh dir die Registerkarte Hilfe oder http://dusty.homeunix.net/wiki/Drizzle an.</html>
<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://alcugs.almlys.org/Drizzle</html>{->}<html>Dieser Bereich dient dem Konvertieren von MystV/Moul/Crowthistle Dateien, um deren Welten in Uru zu spielen. Sieh dir die Registerkarte Hilfe oder http://myst.dustbird.net/wiki/Drizzle an.</html>
SoundDecompress (When conversion is done, it will ask you to run this.){->}SoundDecompress (wenn die Konvertierung erfolgt ist, wird Drizzle dich bitten, dies zu starten.)
Start...{->}Starten...
Moul folder:{->}Moul Verzeichnis:
......@@ -185,7 +185,7 @@ Moul music...{->}Moul Musik...
Crowthistle music...{->}Crowthistle Musik...
Pots music...{->}Pots Musik...
(Make sure you fill out the 'Pots Folder' on the Moul tab for this one.){->}(Stelle sicher, dass du das 'Pots Verzeichnis' im Moul Bereich angegeben hast, um diese Musik zu bekommen.)
Instructions can be found on the Help tab or at http://alcugs.almlys.org/Drizzle{->}Eine Anleitung kann unter der 'Hilfe' Registerkarte oder unter http://dusty.homeunix.net/wiki/Drizzle gefunden werden.
Instructions can be found on the Help tab or at http://alcugs.almlys.org/Drizzle{->}Eine Anleitung kann unter der 'Hilfe' Registerkarte oder unter http://myst.dustbird.net/wiki/Drizzle gefunden werden.
infolder:{->}Quellverzeichnis
outfolder:{->}Zielverzeichnis
Memories: this area is for extracting images, notes, etc. from Uru (either offline or online){->}Erinnerungen: Dieser Bereich dient dem Extrahieren von Bildern, Notizen etc. aus Uru (sowohl offline als auch online)
......@@ -199,7 +199,7 @@ port:{->}Port:
Stop Server{->}Beende den Server
Indicate in the log when files are read?{->}Soll im Verlauf angegeben werden, dass die Dateien gelesen wurden?
You have to stop and start the server for settings changes to take effect.{->}Du musst den Server einmal beenden und neu starten, damit die Vernderungen bei den Einstellungen wirksam werden.
This proxy server is for viewing old archived web sites. Details on the help tab or http://alcugs.almlys.org/Drizzle{->}Dieser Proxy server dient dem Anschauen von alten archivierten Websites. Details gibt es im 'Hilfe' Bereich oder unter http://dusty.homeunix.net/wiki/Drizzle
This proxy server is for viewing old archived web sites. Details on the help tab or http://alcugs.almlys.org/Drizzle{->}Dieser Proxy server dient dem Anschauen von alten archivierten Websites. Details gibt es im 'Hilfe' Bereich oder unter http://myst.dustbird.net/wiki/Drizzle
List Available Ages...{->}Vorhandene Welten auflisten...
Get Offline list.{->}Offline Liste laden.
Run Tests...{->}Testlauf...
......@@ -425,7 +425,7 @@ Woah there! You probably meant to have the 'Partial Age' option set when making
Conversion is set to 'Partial Age', but no Textures prp was found. If your Age has no textures then this is normal, otherwise you should re-export with 3dsmax.{->}Die Konvertierung ist auf 'Teilwelt' gesetzt, aber es wurde keine Textur prp Datei gefunden. Wenn deine Welt keine Texturen hat, ist dies normal, anderenfalls solltest du sie erneut mit 3dsmax exportieren.
//Drizzle30
You appear to be running Windows Vista or Windows Seven. Uru has a bug that will require a workaround, see http://dusty.homeunix.net/wiki/Drizzle#Vista_and_above for details.{->}Dein Computer scheint mit Windows Vista oder Windows 7 zu laufen. Uru hat ein Problem damit, welches umgangen werden muss. Mehr Details auf http://dusty.homeunix.net/wiki/Drizzle#Vista_and_above .
You appear to be running Windows Vista or Windows Seven. Uru has a bug that will require a workaround, see http://myst.dustbird.net/wiki/Drizzle#Vista_and_above for details.{->}Dein Computer scheint mit Windows Vista oder Windows 7 zu laufen. Uru hat ein Problem damit, welches umgangen werden muss. Mehr Details auf http://myst.dustbird.net/wiki/Drizzle#Vista_and_above .
//Fehl: Warn:
Errors:{->}Fehler:
Warnings:{->}Warnungen:
......@@ -6,7 +6,7 @@ Setting language to {->}Setting language to:
Recompilated completed!{->}Recompilation completed!
( Help can be found under the "Help" tab, or detailed help can be found at http://alcugs.almlys.org/Drizzle ){->}( Help can be found under the "Help" tab, or detailed help can be found at http://dusty.homeunix.net/wiki/Drizzle )
<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://alcugs.almlys.org/Drizzle</html>{->}<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://dusty.homeunix.net/wiki/Drizzle</html>
Instructions can be found on the Help tab or at http://alcugs.almlys.org/Drizzle{->}Instructions can be found on the Help tab or at http://dusty.homeunix.net/wiki/Drizzle
This proxy server is for viewing old archived web sites. Details on the help tab or http://alcugs.almlys.org/Drizzle{->}This proxy server is for viewing old archived web sites. Details on the help tab or http://dusty.homeunix.net/wiki/Drizzle
( Help can be found under the "Help" tab, or detailed help can be found at http://alcugs.almlys.org/Drizzle ){->}( Help can be found under the "Help" tab, or detailed help can be found at http://myst.dustbird.net/wiki/Drizzle )
<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://alcugs.almlys.org/Drizzle</html>{->}<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://myst.dustbird.net/wiki/Drizzle</html>
Instructions can be found on the Help tab or at http://alcugs.almlys.org/Drizzle{->}Instructions can be found on the Help tab or at http://myst.dustbird.net/wiki/Drizzle
This proxy server is for viewing old archived web sites. Details on the help tab or http://alcugs.almlys.org/Drizzle{->}This proxy server is for viewing old archived web sites. Details on the help tab or http://myst.dustbird.net/wiki/Drizzle
......@@ -3,7 +3,7 @@
Warning: {->}Avertissement:
Ignoring: {->}Ignoré:
Get Latest List{->}Rafraîchir la liste
( Help can be found under the "Help" tab, or detailed help can be found at http://alcugs.almlys.org/Drizzle ){->}( De l'aide est disponible sous l'onglet "Aide", pour plus de détails voir: http://dusty.homeunix.net/wiki/Drizzle )
( Help can be found under the "Help" tab, or detailed help can be found at http://alcugs.almlys.org/Drizzle ){->}( De l'aide est disponible sous l'onglet "Aide", pour plus de détails voir: http://myst.dustbird.net/wiki/Drizzle )
Ages:{->}Âges:
Versions:{->}Versions:
Download{->}Télécharger
......@@ -28,7 +28,7 @@ Load last saved Age list at startup.{->}Charger la liste au d
Download most recent Age list at startup.{->}Télécharger la liste au démarrage.
Automatically download list?{->}Chargement automatique de la liste?
Info:{->}Info:
<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://alcugs.almlys.org/Drizzle</html>{->}<html>Cet onglet permet de convertir les fichiers de MystV, Moul et Crowthistle pour les intégrer à Uru. ( De l'aide est disponible sous l'onglet "Aide", pour plus de détails voir: http://dusty.homeunix.net/wiki/Drizzle )</html>
<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://alcugs.almlys.org/Drizzle</html>{->}<html>Cet onglet permet de convertir les fichiers de MystV, Moul et Crowthistle pour les intégrer à Uru. ( De l'aide est disponible sous l'onglet "Aide", pour plus de détails voir: http://myst.dustbird.net/wiki/Drizzle )</html>
SoundDecompress (When conversion is done, it will ask you to run this.){->}Démarrer SoundDecompress (utiliser lorsque la conversion est terminée)
Start...{->}Démarrer
Moul folder:{->}Dossier MOUL:
......@@ -42,7 +42,7 @@ Moul music...{->}Musique de Moul
Crowthistle music...{->}Musique de Crowthistle
Pots music...{->}Musique de POTS
(Make sure you fill out the 'Pots Folder' on the Moul tab for this one.){->}(Assurez-vous d'avoir choisi le 'Dossier POTS' dans l'onglet 'Moul'.)
Instructions can be found on the Help tab or at http://alcugs.almlys.org/Drizzle{->}De l'aide est disponible sous l'onglet "Aide", pour plus de détails voir: http://dusty.homeunix.net/wiki/Drizzle.
Instructions can be found on the Help tab or at http://alcugs.almlys.org/Drizzle{->}De l'aide est disponible sous l'onglet "Aide", pour plus de détails voir: http://myst.dustbird.net/wiki/Drizzle.
infolder:{->}Dossier source:
outfolder:{->}Dossier destination:
Memories: this area is for extracting images, notes, etc. from Uru (either offline or online){->}Souvenirs: Cet onglet permet d'extraire images, notes, etc. de Uru (versions multi-joueurs ou autonome)
......@@ -56,7 +56,7 @@ port:{->}Port:
Stop Server{->}Arrêter serveur
Indicate in the log when files are read?{->}Indiquez dans le journal quand les fichiers sont lus?
You have to stop and start the server for settings changes to take effect.{->}Vous devex arrêter et redémarrer le serveur pour que les changements prennent effet.
This proxy server is for viewing old archived web sites. Details on the help tab or http://alcugs.almlys.org/Drizzle{->}<html>Ce serveur proxy permet de parcourir de vieux sites web archivés en .zip. De l'aide est disponible sous l'onglet "Aide", pour plus de détails voir: http://dusty.homeunix.net/wiki/Drizzle.</html>
This proxy server is for viewing old archived web sites. Details on the help tab or http://alcugs.almlys.org/Drizzle{->}<html>Ce serveur proxy permet de parcourir de vieux sites web archivés en .zip. De l'aide est disponible sous l'onglet "Aide", pour plus de détails voir: http://myst.dustbird.net/wiki/Drizzle.</html>
List Available Ages...{->}Liste des Âges disponibles
Get Offline list.{->}Liste locale
Run Tests...{->}Démarrer tests
......@@ -279,7 +279,7 @@ Woah there! You probably meant to have the 'Partial Age' option set when making
Conversion is set to 'Partial Age', but no Textures prp was found. If your Age has no textures then this is normal, otherwise you should re-export with 3dsmax.{->}Vous avez choisi l'option 'Age partiel', mais Drizzle ne trouve pas votre fichier prp de textures. C'est normal si votre Age n'a pas de textures, sinon vous devriez l'exporter de nouveau à partir de 3dsmax.
//Drizzle30
You appear to be running Windows Vista or Windows Seven. Uru has a bug that will require a workaround, see http://dusty.homeunix.net/wiki/Drizzle#Vista_and_above for details.{->}Il semble que vous utilisiez Windows Vista ou Windows 7. Cela peut causer un problème avec Uru, voir la solution ici: http://dusty.homeunix.net/wiki/Drizzle#Vista_and_above
You appear to be running Windows Vista or Windows Seven. Uru has a bug that will require a workaround, see http://myst.dustbird.net/wiki/Drizzle#Vista_and_above for details.{->}Il semble que vous utilisiez Windows Vista ou Windows 7. Cela peut causer un problème avec Uru, voir la solution ici: http://myst.dustbird.net/wiki/Drizzle#Vista_and_above
//Err: Avertissements:
Errors:{->}Erreurs:
Warnings:{->}Aver:
Willkommen in Drizzle!
Aktuelle und detailliertere Hilfe gibt es bei http://dusty.homeunix.net/wiki/Drizzle
Aktuelle und detailliertere Hilfe gibt es bei http://myst.dustbird.net/wiki/Drizzle
Um UAM (UruAgeManager) zu benutzen:
......@@ -71,7 +71,7 @@ Dies stellt dir Informationen
Projekt Info:
-------------
Lizenz: GPLv3, oder irgendeine spätere Version, wenn du möchtest.
SVN: https://alcugs.almlys.org/svn/drizzle/
SVN: http://sourceforge.net/p/drizzle/code/
Sourceforge: http://sourceforge.net/projects/drizzle/
Mitwirkende (keine komplette Liste):
Dustin(aka ddb174): Konvertierung
......
Welcome to Drizzle!
Up-to-date and more detailed help is available at http://dusty.homeunix.net/wiki/Drizzle
Up-to-date and more detailed help is available at http://myst.dustbird.net/wiki/Drizzle
To use UAM (UruAgeManager):
......@@ -72,7 +72,7 @@ This gives some information on an Age or Ages.
Project Info:
-------------
License: GPLv3, or at your option, any later version.
SVN: https://alcugs.almlys.org/svn/drizzle/
SVN: http://sourceforge.net/p/drizzle/code/
Sourceforge: http://sourceforge.net/projects/drizzle/
Contributers(not a complete list):
Dustin(aka ddb174): conversion
......
Bienvenue à Drizzle!
De l'aide plus détaillée et plus à jour est disponible ici: http://dusty.homeunix.net/wiki/Drizzle
De l'aide plus détaillée et plus à jour est disponible ici: http://myst.dustbird.net/wiki/Drizzle
Utilisation de UAM (UruAgeManager):
......@@ -77,7 +77,7 @@ Ceci produit un rapport sur un ou des Ages.
Information sur Drizzle:
-------------
Licence: GPLv3, ou subséquente, à votre choix.
SVN: https://alcugs.almlys.org/svn/drizzle/
SVN: http://sourceforge.net/p/drizzle/code/
Sourceforge: http://sourceforge.net/projects/drizzle/
Contributeurs(liste incomplète):
Dustin(aka ddb174): conversion et programmation
......
Welkom bij Drizzle!
Uitgebreidere en up-to-date uitleg is beschikbaar op http://dusty.homeunix.net/wiki/Drizzle
Uitgebreidere en up-to-date uitleg is beschikbaar op http://myst.dustbird.net/wiki/Drizzle
Om UAM (UruAgeManager) te gebruiken:
------------------------------------
......@@ -64,7 +64,7 @@ Dit geeft wat informatie over een Wereld of Werelden.
Projectinformatie:
------------------
Licentie: GPLv3, of een latere versie indien gewenst
SVN: https://alcugs.almlys.org/svn/drizzle/
SVN: http://sourceforge.net/p/drizzle/code/
Sourceforge: http://sourceforge.net/projects/drizzle/
Bijdragers (geen complete lijst):
Dustin(alias ddb174): omzetten
......
......@@ -4,7 +4,7 @@ Warning: {->}Waarschuwing:
Ignoring: {->}Genegeerd:
//Get Latest List{->}Haal de nieuwste lijst
Get Latest List{->}Ververs lijst
( Help can be found under the "Help" tab, or detailed help can be found at http://alcugs.almlys.org/Drizzle ){->}( Hulp is te vinden onder het tabblad "Help", of uitgebreide hulp is te vinden op http://dusty.homeunix.net/wiki/Drizzle )
( Help can be found under the "Help" tab, or detailed help can be found at http://alcugs.almlys.org/Drizzle ){->}( Hulp is te vinden onder het tabblad "Help", of uitgebreide hulp is te vinden op http://myst.dustbird.net/wiki/Drizzle )
Ages:{->}Werelden:
Versions:{->}Versies:
Download{->}Downloaden
......@@ -31,7 +31,7 @@ Load last saved Age list at startup.{->}Laatst opgeslagen lijst met Werelden lad
Download most recent Age list at startup.{->}Recentste lijst met Werelden downloaden bij opstarten.
Automatically download list?{->}Lijst automatisch downloaden?
Info:{->}Info:
<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://alcugs.almlys.org/Drizzle</html>{->}<html>Dit gedeelte is voor het omzetten van MystV-/MOUL-/Crowthistle-bestanden om te spelen in Uru. Zie het tabblad Help of http://dusty.homeunix.net/wiki/Drizzle</html>
<html>This area is for converting MystV/Moul/Crowthistle files for play in Uru. See the Help tab or http://alcugs.almlys.org/Drizzle</html>{->}<html>Dit gedeelte is voor het omzetten van MystV-/MOUL-/Crowthistle-bestanden om te spelen in Uru. Zie het tabblad Help of http://myst.dustbird.net/wiki/Drizzle</html>
SoundDecompress (When conversion is done, it will ask you to run this.){->}SoundDecompress (Als het omzetten klaar is, word je gevraagd dit uit te voeren)
Start...{->}Starten...
Moul folder:{->}MOUL-map:
......@@ -45,7 +45,7 @@ Moul music...{->}Muziek van MOUL...
Crowthistle music...{->}Muziek van Crowthistle...
Pots music...{->}Muziek van POTS...
(Make sure you fill out the 'Pots Folder' on the Moul tab for this one.){->}(Let erop dat je hiervoor de POTS-map op het tabblad MOUL invult.)
Instructions can be found on the Help tab or at http://alcugs.almlys.org/Drizzle{->}Instructies zijn te vinden op het tabblad Help of op http://dusty.homeunix.net/wiki/Drizzle
Instructions can be found on the Help tab or at http://alcugs.almlys.org/Drizzle{->}Instructies zijn te vinden op het tabblad Help of op http://myst.dustbird.net/wiki/Drizzle
infolder:{->}Invoermap
outfolder:{->}Uitvoermap
Memories: this area is for extracting images, notes, etc. from Uru (either offline or online){->}Herinneringen: dit gedeelte is voor het uitlezen van afbeeldingen, notities, etc. van Uru (hetzij offline hetzij online)
......@@ -59,7 +59,7 @@ port:{->}Poort:
Stop Server{->}De server stoppen
Indicate in the log when files are read?{->}In het logboek aangeven wanneer er bestanden worden gelezen?
You have to stop and start the server for settings changes to take effect.{->}Je moet de server stoppen en starten om de gewijzigde instellingen te laten werken.
This proxy server is for viewing old archived web sites. Details on the help tab or http://alcugs.almlys.org/Drizzle{->}Deze proxyserver is voor het bekijken van oude, gearchiveerde websites. Meer informatie op het tabblad Help of op http://dusty.homeunix.net/wiki/Drizzle
This proxy server is for viewing old archived web sites. Details on the help tab or http://alcugs.almlys.org/Drizzle{->}Deze proxyserver is voor het bekijken van oude, gearchiveerde websites. Meer informatie op het tabblad Help of op http://myst.dustbird.net/wiki/Drizzle
List Available Ages...{->}De beschikbare Werelden opsommen
Get Offline list.{->}Offline lijst laden.
Run Tests...{->}Tests uitvoeren...
......@@ -283,6 +283,6 @@ Woah there! You probably meant to have the 'Partial Age' option set when making
Conversion is set to 'Partial Age', but no Textures prp was found. If your Age has no textures then this is normal, otherwise you should re-export with 3dsmax.{->}Omzetten is op 'Gedeeltelijke Age' gezet, maar er is geen Texture prp gevonden. Als jouw Age geen textures heeft dan is dit normaal, anders moet je weer exporteren in 3dsmax.
//Drizzle30
You appear to be running Windows Vista or Windows Seven. Uru has a bug that will require a workaround, see http://dusty.homeunix.net/wiki/Drizzle#Vista_and_above for details.{->}U heeft Windows Vista of Windows 7. Uru heeft een probleem dat aandacht nodig heeft, zie http://dusty.homeunix.net/wiki/Drizzle#Vista_of_hoger voor details.
You appear to be running Windows Vista or Windows Seven. Uru has a bug that will require a workaround, see http://myst.dustbird.net/wiki/Drizzle#Vista_and_above for details.{->}U heeft Windows Vista of Windows 7. Uru heeft een probleem dat aandacht nodig heeft, zie http://myst.dustbird.net/wiki/Drizzle#Vista_of_hoger voor details.
Errors:{->}Fouten:
Warnings:{->}Meldingen:
......@@ -161,10 +161,10 @@ public class AllStates //implements java.io.Serializable
boolean result = load(filename);
//hack
for(IState state: refs)
{
state.initialise();
}
//for(IState state: refs)
//{
// state.initialise();
//}
if(result) pushOutStates();
......@@ -231,6 +231,7 @@ public class AllStates //implements java.io.Serializable
}
return false;
}
return true;
}
public static void pullInStates()
......@@ -251,8 +252,14 @@ public class AllStates //implements java.io.Serializable
states.put(name, val);
}
}
private static void pushOutStates()
public static void pushOutStates()
{
//hack to initialize all registered states
for(IState state: refs)
{
state.initialise();
}
/*for(pair p: states)
{
if(p.ref!=null && p.val!=null)
......
......@@ -71,7 +71,7 @@ public class b
{
return findBytes_Once(data, pattern, 0);
}
private static int findBytes_Once(byte[] data, byte[] pattern, int offset)
public static int findBytes_Once(byte[] data, byte[] pattern, int offset)
{
//This is the Knuth–Morris–Pratt algorithm
int[] table = gettable(pattern);
......
......@@ -19,13 +19,14 @@ public class PrepareAge
{
//The base folder is expected to have a certain layout.
String tempfolder = basefolder + "/temp/"; //temp folder whose contents can be safely deleted afterwards. Will be created if doesn't exist.
String archivefolder = basefolder + "/files/http/www/uru-ages/"; //where to find the .7z files, and to place the uam.status.xml file.
String archivefolder = basefolder + "/files/http/roots/myst.dustbird.net/uru-ages/"; //"/files/http/www/uru-ages/"; //where to find the .7z files, and to place the uam.status.xml file.
String urufilesfolder = basefolder + "/UruFiles/"; //The location of Uru files. This one has numbered subfolders, 0 is overriden by the contents of 1 which is overriden by the contents of 2, etc. These subfolders are the ones that have Uru's directory structure.
//String dataserverfolder = basefolder + "/files/alcugs/dataserver/"; //The output folder for the generated dataserver files.
String dataserverfolder = basefolder + "/files/http/dataserver/"; //The output folder for the generated dataserver files.
String dataserverfolder = basefolder + "/files/wwwuamsharddataserver/http/"; //The output folder for the generated dataserver files.
//dataserverfolder was "/files/http/dataserver/"
String sdlfolder = basefolder + "/files/alcugs/sdl/"; //Folder Alcugs will look in for .sdl files.
String agefolder = basefolder + "/files/alcugs/age/"; //Folder Alcugs will look in for .age files.
String statusfolder = basefolder + "/files/http/www/status/";
String statusfolder = basefolder + "/files/http/roots/myst.dustbird.net/status/"; //"/files/http/www/status/";
gui.Interactor interactor = new gui.InteractorGui(); //this is a gui one, but we could have a commandline one passed in instead.
StringBuilder summary = new StringBuilder();
......@@ -96,7 +97,7 @@ public class PrepareAge
//order shard list to match Uam
//well, let's just warn about .age files without an entry for now.
final boolean donexuslist = true;
final boolean donexuslist = false;
if(donexuslist)
{
boolean agesmissing = false;
......@@ -126,7 +127,7 @@ public class PrepareAge
if(nexusages2.contains(agename)) continue; //already in the nexus list.
//try to add it
boolean tryadd = interactor.AskOkCancel("The Age was ont found in the list, shall we try to add it to AvailableFanLinks.inf?");
boolean tryadd = interactor.AskOkCancel("The Age was not found in the list, shall we try to add it to AvailableFanLinks.inf?");
if(tryadd)
{
String propername = info.config.getAgeProperName(agename);
......@@ -146,6 +147,68 @@ public class PrepareAge
if(agesmissing) summary.append("There are Ages that need to be added to AvailableFanLinks.inf\n");
}
// Check for Ages with missing info
final boolean checkageinfo = true;
if(checkageinfo)
{
boolean agesmissing = false;
//get cyan ages
Set<String> cyanages = auto.ageLists.AllCyanAges();
//read current inf file
String nexusfilename = urufiles.GetAbsPath("/AvailableFanLinks.inf");
String nexusdata = FileUtils.ReadFileAsString(nexusfilename);
OfflineKIInfFile inf = new OfflineKIInfFile(nexusdata);
Set<String> nexusages = inf.GetAllAgeFilenames();
//read current inf file
OfflineKIInfFile inf2 = new OfflineKIInfFile(FileUtils.ReadFileAsString(urufiles.GetAbsPath("/AvailableExtraLinks.inf")));
Set<String> nexusages2 = inf2.GetAllAgeFilenames();
//read UamAgeInfo files
Set<String> ageinfoages = new java.util.HashSet<String>();
for(String relpath: urufiles.listChildrenRelpaths("/img/UamAgeInfo/"))
{
String filename = new File(urufiles.GetAbsPath(relpath)).getName();