Up to Main Index                            Up to Journal for August, 2016

                     JOURNAL FOR MONDAY 29TH AUGUST, 2016
______________________________________________________________________________

SUBJECT: Lots of frontend cleanup
   DATE: Mon 29 Aug 23:43:52 BST 2016

Perception is a funny thing. For example, I seemed to have less time to work
on WolfMUD over the last week or so. Yet looking at WolfMUD's commit log I
seem to have achieved than usual. Usually I like to code for at least 2-3
hours at a time. Anything less and by the time you are up to speed with where
you were and what you were doing you have to stop without actually having
achieved anything. I knew I wasn't going to get much spare time this week so I
kept chipping away at the code in 20-30 minute chunks whenever I could.
Fortunately everything I have been focusing on has been in the frontend
package - mostly cleaning up, refactoring and documenting the package.

The EndOfDataError has been refactored twice. It is no longer exported by the
frontend package and is now named closedError.

The main frontend Driver struct has been slimmed down. The write bool and name
string fields have been dropped. The Driver type has been renamed frontend and
is no longer exported.

The large driver.go file has been split up into smaller logical files.
Currently frontend.go, game.go, greeting.go, login.go and menu.go. This will
help with maintainability and also make it easier for others to customise and
add to the frontend.

I also completed the work preventing multiple logins from the same account.

Now the frontend package is in good shape adding account and player creation
should be easier. I also need to improve loading of accounts as it's quite
brittle at the moment.

And then what?

I am very happy with the current code. I know that re-re-writing everything
has taken a long time but the code needed it and it was worth it. I now feel
that the current code is how I want to take things forward. Once account and
player creation is done the current code is on par with the functionality of
the last prototype I released which was PROTOTYPE3 over 2 years ago.

So indeed, what then? I think then it will be time to draw a line in the sand
that says 'this is the new WolfMUD and how things will be'. I will have to
release an official version 0.0.1 at long last.

Then, for the first time in ages, I can start adding in new features.

All of the changes above have been pushed to the public dev branch.

For those having issues with the new player format here is an example of the
new layout. Just rearrange your records to match using your own hash values:


    Account: 21f7ef98d575f17d752903f6d74ae589
   Password: XM0cguHGalXxkryPv1yiav_dO3XEuTu6kgvh6IM3h5r2
             fwqhMSA5SqE_PvjAVGaLZvFC8CYHKcTWuSmyW2NFsQ==
       Salt: |]_vPH&#&;
    Created: Wed, 19 Nov 2014 20:27:24 UTC
  %%
       Name: aftershocks
      Alias: AFTERSHOCKS
     Gender: FEMALE
       Type: PLAYER
        Ref: PLAYER
  Inventory:
  %%


--
Diddymus


  Up to Main Index                            Up to Journal for August, 2016