Author Topic: A few suggestions for JCloister  (Read 14037 times)

Offline mike_bike_kite

  • Vagabond
  • *
  • Posts: 9
  • Merit: 0
  • I haven't updated my profile yet!
    • View Profile
A few suggestions for JCloister
« on: November 13, 2014, 12:41:56 PM »
I have been using Jcloister for a while and wanted to give some suggestions:

User interface issues:
  • I downloaded the app onto my laptop (Ubuntu running on a C720) and found the start button was off the screen (1366 x 768 screen)- so it appears I can only play the game on my PC :( it might be good to add a start game option in the menu system as well (assume easy)
  • It would be nice to have an icon in the zip file so the application looks like a proper application on my desktop (easy)
  • Why display invalid rotations of tiles? (assume easy to fix)
  • It would be much easier to use if the play options (meeple, big meeple, builder, rotate left and right, undo etc) all appeared as floating icons near to where you play the tile. It would be better still if the icons were semi transparent so you could still see the board underneath (moderate)
  • Why doesn't it remember your settings???? it seems insane in this day and age to have to edit files to alter how a program works (easy)
  • Can you legally play the game with both the River and River II options chosen? Game seems to allow you to choose both. (easy fix)
AI:
  • It would be nice to have stronger AI but this isn't a big issue (probably hard)
  • It would be nice to change the strength of the AI players so as you can progress and play stronger games within a "league" of AI opponents (moderate)
General Info:
  • Why does it show scoring at the end for options you haven't chosen? (easy)
  • It would be interesting to see which options are the most popular amongst JCloister (Carcassonne) players (easy)
  • I like the new layout of the web site but it needs info saying that the application can be run on any OS (if you have java) and a quick explanation of how to run it. (easy)
Nice to have:
  • I'd like to have a little move life when you zoom into the board ie see birds moving across the landscape, sheep slowly moving around, maybe a horse and cart on the road. Perhaps clouds (or the shadows of clouds) could slowly drift by. I don't believe this needs any complicated programming (birds and clouds easy/sheep more difficult)
  • Low level background sounds could also be used when zooming into a cathedral, town or country setting. This would just add to the immersive nature of the game ( easy)
  • It might be interesting to be able to change the background to a different colour or tiled image. This isn't a big issue though (easy)

I know there are a lot of points above but I was asked to put my suggestions on this forum so here they are. I'm actually very impressed by JCloister and the current version is great fun to play but there's always a little more that can be done and these were my suggestions. Feel free to comment.

Mike

Did anyone else find it took them 7 attempts to register (perhaps I really am a robot :-[ )
and now there's more questions before I can post  >:D
I think it was easier to get my passport!  :)


Linkback: https://www.carcassonnecentral.com/community/index.php?topic=1257.0
« Last Edit: November 14, 2014, 03:01:06 AM by mike_bike_kite, Reason: added difficulty of implementation »

Offline farin

  • Duke
  • *
  • Posts: 241
  • Merit: 44
  • JCloisterZone maintainer
    • View Profile
Re: A few suggestions for JCloister
« Reply #1 on: November 15, 2014, 11:10:57 AM »
UI
1 - there is  scrollbar, but you are definitely right it is sick. I want to improve it soon.
2 - what do you mean? You must extract it and you delete zip immediately. Or do you mean icon of .jar file?
3 - One reason is that you may want to rotate first than move to tile when you place. But it is probably less common scenario
and you are not first who request it. I will probably change it to skip invalid rotation with config option to use current way
4 - use tab or right click to toggle. Is it enough?
5 - it should remember it. One connected to point 2. Do you run it directly from zip? In such case config wouldn't be writable ...
6 - you can play both rivers. Do you have any issue with it?

AI
yep, nice to have but quite complex task. road map is now focusing to public server (human to human play is better)

General
1. you right, it useless
2. when public server will be done it will be possible, it is not bad idea
3. yep

nice to have
i am not graphics designer, if somebody wants participate is open to such things


Offline danisthirty

  • (not thirSty!)
  • Owner
  • Chatelain Grand-Croix
  • *
  • *
  • Posts: 6946
  • Merit: 293
  • "First to 4 points wins?"
    • View Profile
Re: A few suggestions for JCloister
« Reply #2 on: November 15, 2014, 11:15:48 PM »
Hi Mike, welcome to the forums.  :(y)

Please consider that farin has a family and a full-time job, and that his work on JCloisterZone is just a "labour of love" for him. Furthermore, he doesn't receive any money for it and consequently doesn't owe us anything...

A lot of the suggestions you've come up with might indeed seem easy to implement but this all takes time and there are other areas of the program that farin is concentrating on at present (providing a dedicated server for online play is huge, and keeping on top of bug reports, feature requests and new expansions could easily be a full-time job in itself for many people).

I don't know how much you've played with JCloisterZone but I've played probably about 300 games spread fairly evenly between human and AI opponents. Others here have played many more than this! I think the ui is something that you get used to the more you play it. In response to points 3 and 4 of yours regarding this, I don't see either of these as issues at all. The tile thing I don't even notice and the way of selecting meeple types (or other options i.e. princess, fairy, tower etc) by tabbing across works very well as it is (in my opinion).

Also, AI is massive! I can't begin to imagine how to program a computer to beat even my 3 year-old daughter at Carcassonne and I have a degree in Computing! When compared to some other electronic versions of Carcassonne such as the Android app, farin's AI is actually a lot better and those other versions are worked on by teams of developers who are being paid for their efforts! There's certainly room for improvement and perhaps some different "styles" of play, but this has never felt like something that urgently needs to be looked at.

I'll check whether your account has been properly verified. Any question answering before posting should only be a very temporary measure.

Dan  :)

Offline mike_bike_kite

  • Vagabond
  • *
  • Posts: 9
  • Merit: 0
  • I haven't updated my profile yet!
    • View Profile
Re: A few suggestions for JCloister
« Reply #3 on: November 16, 2014, 02:22:00 AM »
Please consider that farin has a family and a full-time job, and that his work on JCloisterZone is just a "labour of love" for him. Furthermore, he doesn't receive any money for it and consequently doesn't owe us anything...
I think the work he's done is great and my points weren't complaints but suggestions for making the game even better.

I don't know how much you've played with JCloisterZone but  ... I don't even notice and the way of selecting meeple types
If you do something a lot then it will become automatic but if you're a new user trying the game out then it's a painful barrier. The obvious solution is to keep the various key presses for "power users" and have the floating icons for those of us who need a more intuitive interface.

Also, AI is massive! I can't begin to imagine how to program a computer to beat even my 3 year-old daughter at Carcassonne and I have a degree in Computing!
I write classical games as a hobby (chess, draughts, othello, connect 4 etc) so I fully understand that this part is quite difficult. Improving the AI is certainly tough but luckily this isn't a huge issue. Getting a range of skill levels for the existing AI's is quite straightforward - all you do is alter the weighting of the various scoring methods and perhaps introduce a small random element for each AI. You might have an AI called Emma that put's much more weighting on farms than normal while an AI called Peter might try to stop you building cities at every turn. You could then play all these new personalities against each other to come up with a league table of AI personalities.

UI
1 - there is  scrollbar, but you are definitely right it is sick. I want to improve it soon.
2 - what do you mean? You must extract it and you delete zip immediately. Or do you mean icon of .jar file?
3 - One reason is that you may want to rotate first than move to tile when you place. But it is probably less common scenario
and you are not first who request it. I will probably change it to skip invalid rotation with config option to use current way
4 - use tab or right click to toggle. Is it enough?
5 - it should remember it. One connected to point 2. Do you run it directly from zip? In such case config wouldn't be writable ...
6 - you can play both rivers. Do you have any issue with it?

AI
yep, nice to have but quite complex task. road map is now focusing to public server (human to human play is better)

General
1. you right, it useless
2. when public server will be done it will be possible, it is not bad idea
3. yep

nice to have
i am not graphics designer, if somebody wants participate is open to such things
UI 1 - the scrollbar definitely doesn't show on my laptop (a C720 running Linux). The start game button is off the screen to the right and the options at the bottom of the screen are also impossible to view. An easy fix would be to put "start game" in the pull down menu as well.
UI 2 - I was after an icon to view on my desktop. At the moment I have lot's of professional looking icons on my desktop that go with various programs but for JCloister I have no graphic at all. I'll try and attach an icon to this post.
UI 4 - No. Regular users of your program will quickly adopt to any set of random key presses to control your program but if you want a wider audience then you need to make this part much more intuitive. I'll admit I nearly deleted your program from my PC when I was clicking a tile that wouldn't rotate for some reason (it was a previous version) when suddenly it rotated, added a meeple in the wrong place and ended my go.
UI 5 - The only way to get the program to remember your settings is to edit the settings file and save it. This seems a little crazy to me as you have a reasonable GUI interface to the settings in the program yet it does nothing when I press save. The program is unzipped etc. Have you considered using java.util.prefs.Preferences for saving settings etc?
UI 6 - my bad  :-[
AI  - see my reply to Dan above.
Nice to have - perhaps it might be worthwhile to have a list of tasks that you might like help with.

Gerry

  • Guest
Re: A few suggestions for JCloister
« Reply #4 on: November 16, 2014, 11:06:54 AM »
Since the program is written using JAVA perhaps Farin could arrange for it to make some coffee while we are playing   :@

Offline farin

  • Duke
  • *
  • Posts: 241
  • Merit: 44
  • JCloisterZone maintainer
    • View Profile
Re: A few suggestions for JCloister
« Reply #5 on: November 16, 2014, 01:40:42 PM »
feedback from fresh players is great, they don't suffer with blindness to flaws we are used to

mike_bike_kite: I want to examine more settings saving problem. To be sure. you say that if you change item in settings menu it is not remember in next app run, is it? (same presets is not saved ok?)
Could you please provide your java version
$ java -version

and run app from console with more detailed logging:
$ java -jar JCloisterZone.jar -Dorg.slf4j.simpleLogger.defaultLogLevel=info

try change settings and paste console output

btw AI improvements is big point in roadmap, maybe during next year ...
« Last Edit: November 16, 2014, 01:43:01 PM by farin »

Offline mike_bike_kite

  • Vagabond
  • *
  • Posts: 9
  • Merit: 0
  • I haven't updated my profile yet!
    • View Profile
Re: A few suggestions for JCloister
« Reply #6 on: November 17, 2014, 01:30:10 AM »
Version:
Code: [Select]
E:\Dropbox\Projects\AlienSwarm>java -version
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)

Detailed logging:
Code: [Select]
E:\Program Files (x86)\JCloisterZone>dir
 Volume in drive E is New Volume
 Volume Serial Number is 28DF-AF11

 Directory of E:\Program Files (x86)\JCloisterZone

15/11/2014  10:38    <DIR>          .
15/11/2014  10:38    <DIR>          ..
13/11/2014  19:34             1,954 config.yaml
15/11/2014  10:38               154 error.log
13/11/2014  19:33         5,603,035 JCloisterZone.jar
13/11/2014  19:33               762 JCloisterZone.jar - Shortcut.lnk
13/11/2014  19:33    <DIR>          plugins
05/01/2014  23:19    <DIR>          saves
               4 File(s)      5,605,905 bytes
               4 Dir(s)  795,501,604,864 bytes free

E:\Program Files (x86)\JCloisterZone>java -jar JCloisterZone.jar -Dorg.slf4j.sim
pleLogger.defaultLogLevel=info
[AWT-EventQueue-0] WARN com.jcloisterzone.config.ConfigLoader - Unable to create
 configuration file E:\Program%20Files%20(x86)\JCloisterZone\config.yaml
It seems it can't write to this directory. Should it be writing elsewhere? should the program be elsewhere? should jcloister just be using the prefs class?

Yet more suggestions:
  • Can the settings screen be split into 2 with one screen to choose players and the other for settings?
  • Could the player screen have avatar images of the AI players?
  • Could the settings screen include the settings from the extra settings that are only available from the menu?
  • It would look pretty if the settings screen just had small images of the expansions with a tick if they were active. Not sure how you'd stand on copy-write here.

Regards the AI stuff: strangely I always preferred working on the AI to the graphics stuff, I felt like a new father when my chess program beat me for the first time. I think you should have a way of altering the personalities (and strength) of the AI's before you make the AI stronger though. It would be off putting for a new player to start up JCloister and be crushed by the AI on every turn.

Offline farin

  • Duke
  • *
  • Posts: 241
  • Merit: 44
  • JCloisterZone maintainer
    • View Profile
Re: A few suggestions for JCloister
« Reply #7 on: November 17, 2014, 04:37:13 AM »
thanks, it will try it myself with jcz in same location lnk shortcut.

yaml fits better then prefs, better for human reading, debugging etc, power users making changes directly to it (eg changing timeout to dismiss score etc.)
I will rather make some fallback for write restriction (maybe using prefs)

game setup is in single page because you can setup game and other people can connect
don't care much about it now, roadmap for 3.2 is more granular expansion and rules settings which needs this page completely redesign.

Main problem with AI is that it was quite old part of code. In 3.0 I made bug refactoring and way to improve this is open. But it is gradual process.

Offline mike_bike_kite

  • Vagabond
  • *
  • Posts: 9
  • Merit: 0
  • I haven't updated my profile yet!
    • View Profile
Re: A few suggestions for JCloister
« Reply #8 on: November 17, 2014, 05:22:49 AM »
Thanks for considering the suggestions Farin but remember they are only suggestions  :)
You could consider the idea of making the project an open source project though I'll admit I've never released any of my projects this way.
If not then you could just have a list of items you might like help on - things like the graphics and sounds could be done by others without accessing your code.

Mike

PS remember that power users are only about 5% of your user base. Making it easy to use for the other 95% should be a higher priority but it's your choice.

Offline MrNumbers

  • Duke Chevalier
  • *
  • Posts: 1830
  • Merit: 91
    • View Profile
    • Carcassonne Latvia
Re: A few suggestions for JCloister
« Reply #9 on: November 17, 2014, 05:29:04 AM »
You could consider the idea of making the project an open source project

The project is already open source.
"I never lose. Either I win or I learn." (Nelson Mandela)

Offline Hounk

  • Baron
  • *****
  • Posts: 965
  • Merit: 15
  • I haven't updated my profile yet!
    • View Profile
Re: A few suggestions for JCloister
« Reply #10 on: January 11, 2015, 03:02:55 AM »
I was not aware while playing my first online game, that I was doing it against the programmer of this very fine software. Thanks a lot for it and high regards to you, farin.

Anyway, one thing which was not easy at first glance to figure out was, how to include AI players to the game. (Pressing a button twice.) Maybe this could be added to the control sheet of the help section. I must add, that I use JCZ with German language setting. This is perfect with me and I would not know, how to change it, it was the setup by default. So I do not know, if this is an issue in the English version as well.
« Last Edit: January 11, 2015, 03:07:21 AM by Hounk »

Offline MrNumbers

  • Duke Chevalier
  • *
  • Posts: 1830
  • Merit: 91
    • View Profile
    • Carcassonne Latvia
Re: A few suggestions for JCloister
« Reply #11 on: February 01, 2015, 12:07:22 PM »
I've just got an idea that doesn't take much time and work to implement:
Playing with "Traders & Builders", it would be nice to know, how efficiently the builder was used by every player.
I see it as an additional line in the results window in a very simple manner: "Tiles drawn" (or "Tiles placed").
Since it is a very popular expansion and is used in almost every game, I think this information is good to know.

What do you think?

P.S. It's a pity that I've got this idea almost at the end of "Traders & Builders" League :-\

Offline danisthirty

  • (not thirSty!)
  • Owner
  • Chatelain Grand-Croix
  • *
  • *
  • Posts: 6946
  • Merit: 293
  • "First to 4 points wins?"
    • View Profile
Re: A few suggestions for JCloister
« Reply #12 on: February 01, 2015, 12:31:59 PM »
Great idea. Seeing the number of bonus/ builder turns generated by each player would be really interesting. I have a feeling my builder is often somewhat underutilised...

Offline Carcking

  • Duke Chevalier
  • *
  • *
  • Posts: 1853
  • Merit: 33
  • I call Red!
    • View Profile
Re: A few suggestions for JCloister
« Reply #13 on: February 01, 2015, 07:45:15 PM »
Sounds like a great idea. Seems simple but that is speaking from ignorance of the JCloister code.  ???
I just drew the perfect tile for my MonKnighThieFarmer!

Offline Hounk

  • Baron
  • *****
  • Posts: 965
  • Merit: 15
  • I haven't updated my profile yet!
    • View Profile
Re: A few suggestions for JCloister
« Reply #14 on: February 02, 2015, 12:08:32 AM »
One possibility might be, to count and show how many tiles each player has placed during the game. Of course, this would also indicate the possible advantage of being first in line and in a future version, which might include "The Messengers" also the extras turns generated by this expansion. But in first place, the difference will always be mainly because of the use of the builder.


Share via delicious Share via digg Share via facebook Share via furl Share via linkedin Share via myspace Share via reddit Share via stumble Share via technorati Share via twitter

  Subject / Started by Replies / Views Last post
clip
Jcloister farm patterns

Started by Gerry

4 Replies
4192 Views
Last post November 02, 2014, 06:31:49 AM
by Gerry
xx
Anybody wants to play a JCloister-Game now?

Started by Hounk

4 Replies
5766 Views
Last post January 15, 2015, 07:18:31 AM
by Rosco
question
Is there an option to have JCloister play in a non competitive mode?

Started by loki

6 Replies
4672 Views
Last post September 07, 2015, 11:35:33 AM
by Ailurus
xx
Few random pictures and thoughts

Started by Snearone

17 Replies
3915 Views
Last post October 31, 2022, 11:56:37 AM
by Scott
question
A few WHAT IF questions regarding save and load and local and remote games

Started by Gerry

2 Replies
5540 Views
Last post December 20, 2014, 01:24:10 AM
by farin