Aethyr issueshttps://git.qoto.org/groups/aethyr/-/issues2019-04-17T10:07:33Zhttps://git.qoto.org/aethyr/Aethyr/-/issues/12Finish migrating commands over to new style2019-04-17T10:07:33ZJeffrey Phillips Freemanthe@jeffreyfreeman.meFinish migrating commands over to new style*Created by: freemo*
Commands are being pulled out of the old style where their functionality was spread across multiple files and into a format where it is all collected into a single file and registered through a handler. Look at the ...*Created by: freemo*
Commands are being pulled out of the old style where their functionality was spread across multiple files and into a format where it is all collected into a single file and registered through a handler. Look at the "look" command for an example.https://git.qoto.org/aethyr/Aethyr/-/issues/11Allow non-ncurses clients2019-04-17T10:06:24ZJeffrey Phillips Freemanthe@jeffreyfreeman.meAllow non-ncurses clients*Created by: freemo*
Allow clients without ncurses to connect in plain mode.*Created by: freemo*
Allow clients without ncurses to connect in plain mode.https://git.qoto.org/aethyr/Aethyr/-/issues/10Escape color codes2019-04-17T10:05:14ZJeffrey Phillips Freemanthe@jeffreyfreeman.meEscape color codes*Created by: freemo*
Currently less '<' and '>' are forbidden characters. Create a mechanism for escaping these characters.*Created by: freemo*
Currently less '<' and '>' are forbidden characters. Create a mechanism for escaping these characters.https://git.qoto.org/aethyr/Aethyr/-/issues/9The syntax file located under help should be integrated2019-04-17T10:04:35ZJeffrey Phillips Freemanthe@jeffreyfreeman.meThe syntax file located under help should be integrated*Created by: freemo*
currently we keep the syntax file seperately from the code for new commands, integrate these.*Created by: freemo*
currently we keep the syntax file seperately from the code for new commands, integrate these.https://git.qoto.org/aethyr/Aethyr/-/issues/8the following line crashes the server: say hi <raw fg:white nobold>test</raw>...2018-09-23T11:16:53ZJeffrey Phillips Freemanthe@jeffreyfreeman.methe following line crashes the server: say hi <raw fg:white nobold>test</raw> foo*Created by: freemo*
*Created by: freemo*
https://git.qoto.org/aethyr/Aethyr/-/issues/7Word wrap counts color code as characters2018-09-23T06:18:02ZJeffrey Phillips Freemanthe@jeffreyfreeman.meWord wrap counts color code as characters*Created by: freemo*
word wrap default to nil until this fixed. Causes lines to wrap prematurely.*Created by: freemo*
word wrap default to nil until this fixed. Causes lines to wrap prematurely.https://git.qoto.org/aethyr/Aethyr/-/issues/6Enforce coordinates/mapping when moving room's area2018-09-22T17:56:52ZJeffrey Phillips Freemanthe@jeffreyfreeman.meEnforce coordinates/mapping when moving room's area*Created by: freemo*
*Created by: freemo*
https://git.qoto.org/aethyr/Aethyr/-/issues/5Allow to delete coordinates of room2018-09-22T17:56:10ZJeffrey Phillips Freemanthe@jeffreyfreeman.meAllow to delete coordinates of room*Created by: freemo*
only allowed on rooms type mapping for directional exit types*Created by: freemo*
only allowed on rooms type mapping for directional exit typeshttps://git.qoto.org/aethyr/Aethyr/-/issues/4Enforce mapping type when deleting exits2018-09-22T17:55:04ZJeffrey Phillips Freemanthe@jeffreyfreeman.meEnforce mapping type when deleting exits*Created by: freemo*
*Created by: freemo*
https://git.qoto.org/aethyr/Aethyr/-/issues/3Enforce mapping type when creating exits2018-09-22T17:54:44ZJeffrey Phillips Freemanthe@jeffreyfreeman.meEnforce mapping type when creating exits*Created by: freemo*
exits need to obey mapping type*Created by: freemo*
exits need to obey mapping typehttps://git.qoto.org/aethyr/Aethyr/-/issues/2Select mapping type when creating area2018-09-22T17:54:15ZJeffrey Phillips Freemanthe@jeffreyfreeman.meSelect mapping type when creating area*Created by: freemo*
Mapping types need to be settable when creating areas.*Created by: freemo*
Mapping types need to be settable when creating areas.https://git.qoto.org/aethyr/Aethyr/-/issues/1inconsistent coords when changing mapping types2018-09-22T17:53:28ZJeffrey Phillips Freemanthe@jeffreyfreeman.meinconsistent coords when changing mapping types*Created by: freemo*
If an area's mapping type is changed the coordinate system can be incorrect.*Created by: freemo*
If an area's mapping type is changed the coordinate system can be incorrect.https://git.qoto.org/aethyr/AetherMUD/-/issues/7Merge small transactions into larger ones2017-09-19T13:40:19ZJeffrey Phillips Freemanthe@jeffreyfreeman.meMerge small transactions into larger ones*Created by: freemo*
Search for the TODO tags in code but in at least two spots we use a few small transactions rather than one larger one. There may be instances of this not marked by a todo as well.*Created by: freemo*
Search for the TODO tags in code but in at least two spots we use a few small transactions rather than one larger one. There may be instances of this not marked by a todo as well.https://git.qoto.org/aethyr/AetherMUD/-/issues/6When removing an item remove its instances too2017-09-19T13:40:43ZJeffrey Phillips Freemanthe@jeffreyfreeman.meWhen removing an item remove its instances too*Created by: freemo*
If a item is removed from the database it should recursively remove all instances of that object as well.
This is marked in the code with a TODO comment, search for it.*Created by: freemo*
If a item is removed from the database it should recursively remove all instances of that object as well.
This is marked in the code with a TODO comment, search for it.https://git.qoto.org/aethyr/AetherMUD/-/issues/5Reuse objects in DAO2017-09-19T13:37:24ZJeffrey Phillips Freemanthe@jeffreyfreeman.meReuse objects in DAO*Created by: freemo*
When copying from DAO to beans and back there should be a mechanism to cache and reuse objects that are equal (by id or internal name) rather than creating new instances.
This works both ways, when persisting a b...*Created by: freemo*
When copying from DAO to beans and back there should be a mechanism to cache and reuse objects that are equal (by id or internal name) rather than creating new instances.
This works both ways, when persisting a bean to the DAO it should look for the existing one int he database and modify it rather than always creating new ones.https://git.qoto.org/aethyr/AetherMUD/-/issues/4Starting game with spawns on the map throws error2017-09-04T16:14:06ZJeffrey Phillips Freemanthe@jeffreyfreeman.meStarting game with spawns on the map throws error*Created by: freemo*
If you create a spawn then restart the server the following error is thrown at bootup:
```
java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Set
at com.syncleus.aethermud.storage.gr...*Created by: freemo*
If you create a spawn then restart the server the following error is thrown at bootup:
```
java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Set
at com.syncleus.aethermud.storage.graphdb.NpcData$ByteBuddy$8sujz877.getRoamAreas(Unknown Source)
at com.syncleus.aethermud.npc.NpcBuilder.<init>(NpcBuilder.java:79)
at com.syncleus.aethermud.storage.graphdb.GraphDbNpcStorage.lambda$getAllNpcs$0(GraphDbNpcStorage.java:46)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.Iterator.forEachRemaining(Iterator.java:116)
at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
at com.syncleus.aethermud.storage.graphdb.GraphDbNpcStorage.getAllNpcs(GraphDbNpcStorage.java:47)
at com.syncleus.aethermud.configuration.ConfigureNpc.configureAllNpcs(ConfigureNpc.java:38)
at com.syncleus.aethermud.configuration.ConfigureNpc.configure(ConfigureNpc.java:51)
at com.syncleus.aethermud.Main.main(Main.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:282)
at java.lang.Thread.run(Thread.java:748)
```https://git.qoto.org/aethyr/AetherMUD/-/issues/3When logging in with existing character exception thrown.2017-09-04T02:15:12ZJeffrey Phillips Freemanthe@jeffreyfreeman.meWhen logging in with existing character exception thrown.*Created by: freemo*
```
" - from username:freemo
java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to com.syncleus.aethermud.stats.Stats
at com.syncleus.aethermud.storage.graphdb.PlayerData$ByteBuddy$bquYzGql.get...*Created by: freemo*
```
" - from username:freemo
java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to com.syncleus.aethermud.stats.Stats
at com.syncleus.aethermud.storage.graphdb.PlayerData$ByteBuddy$bquYzGql.getStats(Unknown Source)
at com.syncleus.aethermud.stats.modifier.BasicPlayerLevelStatsModifier.modify(BasicPlayerLevelStatsModifier.java:101)
at com.syncleus.aethermud.stats.modifier.StatsModifierFactory.getStatsModifier(StatsModifierFactory.java:51)
at com.syncleus.aethermud.player.Player.getPlayerStatsWithEquipmentAndLevel(Player.java:1141)
at com.syncleus.aethermud.core.GameManager.buildPrompt(GameManager.java:825)
at com.syncleus.aethermud.server.auth.AetherMudAuthenticationHandler.messageReceived(AetherMudAuthenticationHandler.java:108)
at com.syncleus.aethermud.server.auth.AetherMudAuthenticationHandler.handleUpstream(AetherMudAuthenticationHandler.java:73)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:70)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)
at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)
at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:109)
at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:328)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:90)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
```https://git.qoto.org/aethyr/AetherMUD/-/issues/2Multiple instances of GraphDbAetherMudStorage will create conflicts2017-09-17T01:41:19ZJeffrey Phillips Freemanthe@jeffreyfreeman.meMultiple instances of GraphDbAetherMudStorage will create conflicts*Created by: freemo*
Right now only one instance ever gets instantiated, but the way it is currently written if more than one instantiation were used it would create an inconsistent database.*Created by: freemo*
Right now only one instance ever gets instantiated, but the way it is currently written if more than one instantiation were used it would create an inconsistent database.https://git.qoto.org/aethyr/AetherMUD/-/issues/1quit throws NPE2017-09-17T01:55:19ZJeffrey Phillips Freemanthe@jeffreyfreeman.mequit throws NPE*Created by: freemo*
Create a new character, move around till you find a health potion and pick it up. Issue Quit command and the following happens (not all these steps may be needed to produce the exception):
```
java.lang.NullPoin...*Created by: freemo*
Create a new character, move around till you find a health potion and pick it up. Issue Quit command and the following happens (not all these steps may be needed to produce the exception):
```
java.lang.NullPointerException
at com.syncleus.aethermud.core.GameManager.buildPrompt(GameManager.java:823)
at com.syncleus.aethermud.command.commands.Command.getPrompt(Command.java:154)
at com.syncleus.aethermud.command.commands.Command.removeCurrentHandlerAndWritePrompt(Command.java:150)
at com.syncleus.aethermud.command.commands.Command.removeCurrentHandlerAndWritePrompt(Command.java:142)
at com.syncleus.aethermud.command.commands.Command.execCommand(Command.java:176)
at com.syncleus.aethermud.command.commands.QuitCommand.messageReceived(QuitCommand.java:37)
at com.syncleus.aethermud.command.commands.Command.handleUpstream(Command.java:96)
at com.syncleus.aethermud.command.CommandHandler.messageReceived(CommandHandler.java:105)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:70)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)
at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)
at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:109)
at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:328)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:90)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Aug 29, 2017 12:18:26 PM org.jboss.netty.channel.DefaultChannelPipeline
WARNING: An exception was thrown by a user handler while handling an exception event ([id: 0x766bbb72, /0:0:0:0:0:0:0:1:54664 :> /0:0:0:0:0:0:0:1:8080] EXCEPTION: java.lang.NullPointerException)
java.lang.NullPointerException
at com.syncleus.aethermud.player.PlayerManager.removePlayer(PlayerManager.java:68)
at com.syncleus.aethermud.command.CommandHandler.exceptionCaught(CommandHandler.java:118)
at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:60)
at org.jboss.netty.handler.codec.frame.FrameDecoder.exceptionCaught(FrameDecoder.java:377)
at org.jboss.netty.channel.Channels.fireExceptionCaught(Channels.java:525)
at org.jboss.netty.channel.AbstractChannelSink.exceptionCaught(AbstractChannelSink.java:48)
at com.syncleus.aethermud.command.CommandHandler.messageReceived(CommandHandler.java:105)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:70)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)
at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)
at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:109)
at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:328)
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:90)
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
```