PlaneShift
Gameplay => Wish list => Topic started by: RussianVodka on December 18, 2004, 05:11:31 pm
-
I did a search and couldnt find anything on this.
So... What about making an ingame notebook?
It will work sorta like a the ingame journal we have seen in many RPG\'s, except you will be the one writing in it. It will be used for things like, if you meat someone with a complicated name, and they want you to whisper to them in a day or two. Or you just want to write down where you found a sertain item/monster. The notebook i\'m proposing will be seperate from the journal, and they will not effect each other in any way. Unless you want to write down how far you have goten in a quest, so a week later you wont have to wonder.
-
i like that idea alot cos it would help if you couldent remember something importand or if u couldent remember what u have to do in a quest. i hope that will include something like that (could u add ilistrations)
-
everquest had something like this(thought most people didn\'t know it)
/notes
it was quite a handy tool and basicly displayed a text document insdie your character preferances folder(hot keys, friends list, etc.)
-
well that is everquest and i think more people would use it cos plane shift is more hands on interactive plus it would help out with ur skills/ jobs and it would be good if u could place markers on a map of spots where good stuff is.
-
I agree, this would be an excellent addition.
Did any of you ever play the original Myst? There was a notebook that came with the game to jot notes, to help you get think and mull over things when you get stuck.
This would certainly help with the quests, so that you could write down what you have done so far. \"Pages\" in the journal would also be very helpful, because then you could have a page for monsters, several pages for quests, etc.
Perhaps there would be a default journal size that you would start with, for example, say, 50 pages, 30 lines a page, 30 characters a line. I think that this would take about 43K on the server. And then, later, for not too high of a price, you could by a bigger journal, 100 pages, 40 lines a page, 40 characters a line. This would take about 156k on the server.
And so on, so the real writers could buy bigger journals, while the people who barely use this would not. Also, you could use a compression algorithm, or maybe even just a blank space compresser, to save space.
And your journal would be attached to your character, or perhaps your login, for we should have the ability to have multiple characters under one login. The journal could never be looted and never be seen, unless of course you cut and paste something to tell your friends.
Perhaps we could even have a couple of \"log\" pages, where it would automatically log things, to your level of verbosity, such as \"I have killed 32 crabs\" or, if you want it more detailed, \"I killed a crab on January 3rd, 2005, at the Hydlaa plaza, coordinates 123,542\".
I think that this would really help with roleplaying and questing.
-
This would be extremely useful in many situations. I get lost easy so i could wriite down directions in it and quest items i need, Or even things i just need to remember to do .
-
Well, why not just open a text editor and write it into there, then save it?
-
Nice idea, I wonder if the game has cut and paste.
-
Originally posted by Merdarion
Well, why not just open a text editor and write it into there, then save it?
Merdarion, several reasons. First of all, most people don\'t like switching between fullscreen applications, because of desktop resizing and such. Also, it would detract from the aura of the game. If we have a journal displayed in the game with yellowed pages and cracks in the binding, it would certainly have a better effect than a plain white background in a text editor. Also, the point of it would be that it is on the server, and easy to access. You could also get it from anywhere.
-
Why would the server bother to be loaded with all of these files? You couldn\'t cheat with a notebook, so surely it could be a simple text file saved on your PC that the client opens when required.
-
I think this should be a buyable item, with limited pages in each one. A bit like writing in a book :) Then it would work great.
-
If it\'s a buyable item, how do you intend to transfer your notes?
And I wonder if that means new characters will be given just 1 to 2 sheets as note taking papers, not everyone needs a book.
Anyone else think that 30 characters is too few characters per row?
-
Originally posted by Keknehv
Originally posted by Merdarion
Well, why not just open a text editor and write it into there, then save it?
Merdarion, several reasons. First of all, most people don\'t like switching between fullscreen applications, because of desktop resizing and such. Also, it would detract from the aura of the game. If we have a journal displayed in the game with yellowed pages and cracks in the binding, it would certainly have a better effect than a plain white background in a text editor. Also, the point of it would be that it is on the server, and easy to access. You could also get it from anywhere.
Well, then print it on Pergament ;).
You can make the client to a normal window.
-
If you are going to print it, why not just write it on a post note physically?
-
Originally posted by Frarda
Why would the server bother to be loaded with all of these files? You couldn\'t cheat with a notebook, so surely it could be a simple text file saved on your PC that the client opens when required.
Great point, if this notebook/journal is not for passing on to another players, and strictly yours, it should only be stored on your PC.
And Keknehv is right, if this journal looks and feels better than notepad, then I am all for it. Minimizing game, even running it in normal window, number 1, takes resources, two, it\'s killing the RP feel.
I am playin game Kal Online, well i\'m quitting it actually, the point is, it\'s not RP game, strictly for lvl achievment. I write on notepad in this game... this kills the whole game environment and makes the game like some kind of job you never wanted.
-
UO had different types of books, just ingame items.
They were pretty cheap so you can buy alot of them. Some were small (less pages) and some had like hundreds of pages. You was ableto give it a titel and author.
Why use this?
You could write a story, or fighting tips in it and than sell it. You can also use it as notes. What notes? Well a list with all your enemys on it. You should be able to buy posters aswell. These things can be placed on the wall, for example on a guildhouse that tells everybody looking at it what their rules are and some info. You\'ll be able to make a hitloist for your guid, so all members knows what players they need to kill.
It an be used for alot of thing, even for treasure charts etc.
-
I think this is a good idea. It would be more practical to have your notebook file stored on your PC, but it would be nice to be able to give your notes to someone else as an in-game item. It would be great for the RP aspect. You could sell info such as directions without actually telling them. You could make someone sign a contract. 8)
-
I reckon that it isn\'t strictly necessary to store notebooks on the local machine- 200,000 50 page notebooks would take under 10GB on the server - with today\'s quickly increasing disk sizes this would be no problem. The vast majority of players would not fill up all 50 pages, so the space required for 200K notebooks would in reality only be around 5GB. You could fit 16,000,000 notebooks on a single 400GB disk, which will cost under $50 by the time we reach half that number of players.
If we were to store the notebooks on the server we could bring in more features . Theives could even steal the notebook and read it :) , and if the notebook was dropped with the body of the dead player it could be read to find out who to return items to or who to stay away from.
Sharing notebooks between characters on the same account would also be fun, if slightly unrealistic.
-
I always have a piece of paper lying around when I?m computerizing so i can write things down, its quicker, and you can draw little pictures :D
-
UO books were good idea but rarely used. people often passed on the books to other players, but they had major flaws, such as very short lines, you could only fit few sentences on each page.. letters dissapeared on pages, I didn\'t like to use it. Not that it\'s bad idea. It\'s actually good.
Hmmm, even tho with today abilities to store more space, I think any action that dev have to take that invovles occupying more space/resources, it has to be thoroughly thought out.
I suggest that there should be an ingame notepad stored on player PC, that\'s ur personal use. And i suggest books that players may buy to pass on.. I only suggest in this case, these books are planned out good, not like in UO.
-
Maby when you log on, the first thing it does is upload an encripted text file that contains all the players notes. It could upload them into a \"Notebook\" folder or something.
Then, it could just import them into the game when the player opens his notebook.
After the player is done writing, the server computer, and the players computer saves the changes.
This way the server only handles the notebook after the player is done writing, and right before a player logs on.
I\'m not the greatest programer, but i think that using a \" \"extention would be enough to import the notebook text into the game when the player presses a certain button.
-
Originally posted by RussianVodka
Maby when you log on, the first thing it does is upload an encripted text file that contains all the players notes. It could upload them into a \"Notebook\" folder or something.
Then, it could just import them into the game when the player opens his notebook.
After the player is done writing, the server computer, and the players computer saves the changes.
This way the server only handles the notebook after the player is done writing, and right before a player logs on.
I\'m not the greatest programer, but i think that using a \" \"extention would be enough to import the notebook text into the game when the player presses a certain button.
I believe the game runs off SQL, it can probably store it quite easily, the most difficult thing is probably getting that much diskspace seeing as how it might be up to 4GB of text....
-
But we have a dedicated planeshift server, right?
I mean, in the long run, does 4 GB of space really matter? I have cd sets of linux that are on my hard drive, and take up several gigabytes, but it doesn\'t matter. I don\'t think that we need to worry about space.
Also, why would it need to be encrypted? Does it really matter? I can understand encrypted LOGINS... but encrypting and decrypting takes processor power that could better be used for other stuff.
We probably need a developer to tell us if we would have disklspace problems with it. But at around 50k per person, I think we could handle it, possibly even automatically downloading it to someone when they login. On second thought, scratch that. We should serve it to them only when they request it, to conserve bandwidth. Maybe a message like \"You fumble in your pack for your journal\" would appear while it downloads the text from the server.
Perhaps we could also split it up, and have a computer\'s journal that would be a detailed log file, that would only be stored on that computer.
-
At the moment I am actually wondering how to implement it...
On the database end with a user does a \"SELECT * FROM in_game_notes\"
it should return something like (formatting is for fixed width font so use notepad)
-----------------------------------------------------------------
| Character_ID | Page1......| Page2........| Page3..............|
+--------------+-----------+---------------+--------------------+
| 4743838......| Something | something new | boats at the house.|
+--------------+-----------+---------------+--------------------+
| 4743836......| toys are..| really not th | at odd in a way....|
-----------------------------------------------------------------
Note the ... are fillers for FORMATING purposes
But after looking at that it looks inefficient for processing...
The proper way would probably be closer to
-------------------------------------
| Character_ID | Notes..............|
|--------------+--------------------|
| 4743838......| Something..........|
|..............| -%-Page break-%-...|
|..............| Something new......|
|..............| -%-Page break-%-...|
|..............| boats at the house |
|--------------+--------------------|
| 4743836......| toys are...........|
|..............| -%-Page break-%-...|
|..............| really not th......|
|..............| -%-Page break-%-...|
|..............| at off in a way... |
-------------------------------------
Which is probably more efficient in the database form.
Using the 2nd storage method there can be a string parser which will try to place all the data into a dynamic character array.
Note: the \"-%-Page break-%-\" would be data specific to tell it that it\'s the next page and the player will not see it.
Bandwidth wise, the first table is better off for saving Bandwidth when updating notes.
but storage efficiency is best with the 2nd method? Though the page break phrase will take more space there are fewer oprations to do in the datebase to retrieve the information.
While a local copy will be stored for reading each time the player updates the notes and \'closes\' the window, the game will need to update the database (a log button can be coded to allow for instant saving)
As for the table colum specs...
Column name Column Type(size) Key Examples(none see tables above)
--Table 1
Character_ID NUMBER(9) Primary
Page1 VARCHAr2(1000)
Page2 VARCHAr2(1000)
Page3 VARCHAr2(1000)
--Table 2
Character_ID NUMBER(9) Primary
Notes VARCHAR2(51000)
In either case in the event of an update you\'ll need to either re-write a whole page or all of it. Updates can be checked with an \"notesUpdated\" flag or variable.
PS. the 4GB was per table entry maximum size, such a large note would take about 15 minutes to load on a fairly fast unfragmented HD. not to mention.. to transfer that much.. some players will never see the end of their notes or see anything at all for that matter since it\'ll never finish downloading.
-
im no DB knaack, so take what i say with a grain of salt. But while your second variant saves DB operations, it is very costly on memory and processing if you want a halfway decent user interface with things like jump-to-entry, search, sort-by-title/date/etc.
More suited would be a table with the columns userid, title, date, txtcontent. If you insist on a page value in the DB it would have its own column.(The first one of yours is really bad design, since first you have for every entry a load of empty column. Possible nulled and needing space and beside consistence checking would be hard. And second everytime someone expands his notebook to more pages than you have preplanned columns in your table, you need to modify the table.)
-
Actually, DiamondCrite, I don\'t think any one person would have 4 GB in their notebook. Their would be a limit, so probably the biggest notebook that would ever exist would be about 1 MB. For comparison, most four-hundred page books, when converted to text, are less than 1 MB.
And shouldn\'t each page be slightly independent of the others? Wouldn\'t it be bad if you were writing in your notebook and found your nicely formatted notes on the next page halfway down the page? We should have each page sent over as one big raw text file, with page breaks included possibly, but not required. For example, the previous sentence was one long line, but was broken up by the forum software.
Basically, the server would send over each non-blank page as a long string of text, with optional page breaks included, but the client would do the actual word-wrapping and measure the length of each page. When it sees that it has gone to the end of the page, it would skip to the next page and continue writing. Arrow key navigation of the pages would be nice, perhaps with chapter markers and bookmarks.
Hmm... perhaps we could even expand this system into non-writable in game books. Maybe we could even be able to find rare books of magical lore and read them to find the spells. A library with useful information in books would be nice... but you would have to have the check out and all that junk... might be too complex.
-
To zinder:
This games database doesn\'t look like one big excel spreadsheet(I made the same mistake just a few months ago...)
Adding a new colum or row for each new day is not viable
According to what you porposed, we will have to add 1 new column also for each day, very soon we will end up with a book of more then 100 colums... that would be rather ugly to read off, not to mention maintain.
I do not beleive that we need to make the DB remember when an entry was written, sine we are all in different timezones it would be best to let the player enter their own date, unless they are using their ingame notes as a Character Diary.
EDIT Dec 20, 2004 4:18PM EST : Ignore what I said to you, I am sorry for mis-reading. Though I will say that I beleive \"title\" and \"date\" colums are not necesary, since the client should have downloaded the full journal we can have client side seeking if you really need a search function.
To Keknehv:
The 4GB note was for an extremety, when I porposed the table columns, I had set the limits to roughly 51k maximum for the 2nd table and 1k per page for the first table.
Formating of the notes can be done by the player, this formating can be used by using special charcaters on the database side.
How the book is written is up to the client, it can easily control how you write so let the developers handle that =) But you are free to purpose methods.
I have just thought of a slightly difficult by bandwidth saving method to update the in-games notes on the server. The client will store 2 copies of the notes during edit, an original copy which will not be user editable, a modifyable copy is next. When a user hits log or closes the notes, the client will find the differences between the two files and then send it to the game server, at the game server it\'ll access the sql database and then get it\'s own copy, afterwards it\'ll apply a patch to the text and then send it back to the sql server for final storage. This is a solution to save bandwidth uploading, but on initially opening the book the user will need to download all the pages at once.
The -%-Page break-%- was an example phrase, since I am in no position to use non-printing characters. but such things should be possible to allow for user control formating...
-
I suggest you reread my post again. When i talked about adding column i was talking about YOUR first design. If you still think what i suggested needs additional a column each day, please explain why you think that way.
-
Originally posted by zinder
im no DB knaack, so take what i say with a grain of salt. But while your second variant saves DB operations, it is very costly on memory and processing if you want a halfway decent user interface with things like jump-to-entry, search, sort-by-title/date/etc.
Jump-to-enry and search \"very costly on memory and processing\"? I don\'t buy that. If your computer can run Planeshift, it should be able to do a simple search through several hundred kilobytes and return results.
Also, diamondcite, I like your idea. A simple \"diff\" like command that would save bandwidth. I think we could take most of the source code directly off of the GNU diff command.
What if at the beginning of the journal database entry, it would have entries for each of the pages, about whether they are empty or not. The server would only send over non-empty pages, and the client would know that the rest of them are empty. And then, during upload, the client would check if a page was empty, and would upload only ones that are not. Empty pages are pages that contain only spaces and new line characters.
And I just checked out sizes of pages in vi... I think 65 columns by 35 lines, after word wrap, would be great. That is really a very decent amount of page size for everything...
-
To Zinder: I edited my previous post and I appologizes for mis-reading.
To Keknehv:
I\'ve never considered the possibly of a blank page... upon creation of the notes the -%-Page Break-%- or whatever symbol is chosen to identify that a page break was supposed to be present would have been added to the notes...
Assuming the rule of, you have only have 1 in-game notebook per character we could conceivealy add a 3rd column to the database stating how many pages that user can have.
I don\'t see how else a blank page can be represented other then to have 2 page breaks touching each other.
Keeping this close to a NOTEBOOK, instead of an indexed note taking enging, why would headers be necessary, since this is your own notebook, you should know what you placed where.. else it\'s just your poor note taking skill.
My the current table design has no limit on how large each page is.. only how large the total notebook can be. 1000 characters have been reserved for formatting, the devs can increase that number at will.
35 lines... will that fit on a 640x480 screen? maybe even small screens... a size of 45x13 would barely fit on a 320x200 screen
Come to think of it never mind what I think just now. I forgot that some people liked to do mini maps.
One thing I liked about the dos editor was how it could place a character anywhere... but I guess a fixed width font would work just as well.
-
I was actually thinking of each page being a different entry in the database. The header file wouldn\'t be viewable, but would be purely for the server to tell what to send over.
I think that a different data string for each page would be easier, because it could monitor each string individually and watch for if they have too much.
About placing things anywhere.... that really would be needed, wouldn\'t it? It\'s a journal, anyways. I remember the old EDIT dos program too... We should look into making a text editor, or else finding one that we can change.
And also, how many people are running this at 320x200?
We would probably want standard ASCII, it\'s friendliest for ASCII art and maps and such. A nice, curly, journal font may look good... but spacing would be problematic.
-
No one really does use 320x200, but I am sure many still use 640x480 and 800x600 cause their graphics card are weak.
Keknehv, how would you suggest we go about storing each page? a new column per page?
For client side managing we can use a 3 dimensional character array..
... ... I would put code but I am out of practice at the moment... the last 2 things I used was C# and QT... mind is off track...
the character array definition would look something line char inGameNotes [page][line][column]
-
This seems to have gone upwards, into computer coding, etc., but I\'d like to express my fervent support for this idea.
~Monketh
-
Hmm... that array structure looks okay. But when it sends it to the server, we would probably have to replace the null (0) value with the space value; I think it\'s something else in the ASCII character set. But is that the most efficient way to do it? Maybe I should have a look at the gedit source code... it seems to be pretty similar to what we want.
So, maybe this could worm its way into the 0.4 release!
-
I am still a little lost as to where the null or the pages come from if I download the whole thing... if I don\'t download the whole thing I would appreciate it to know where it\'s comming from.
Ascii Hex character 20 is \'space\' as in spacebar
\"\\»Formater here«\\\" this the item on the left would make a better formatter?
I am not sure if each character can be sent as is.
-
IT\' would be great have a ScrapBooke to store some pieces of the story, and note the quest tips what u have and, note the NPC\'s answear that u got, just to not forget, and a suspicious simbol in the cave\'s wall thau u saw a time ago, then u draw into the scrap book, and how much \"carrots\" u sold last month, just to know, notebook/scrapbook to store so many things importants to u and ur whole PlaneShift\'s life, i agree with a scrapbook with drawning habilits to be better than just write, like i said about the simbol images and places that u need to NOT forget ;D
-
Great Idea =P
Would be cool if we could \'draw\' in it. If we don\'t remember
the way at a crossroads or whatever ^^
(It\'s called crossroads in singular too right? o.O)
-
At the moment I do believe text only is easier, while drawings can be stored in the DB, they will need to implement a method of drawing with the mouse for such a thing... in that case.. care to use a sheet of paper and a pencil instead? :)
-
I like. :tup:
@ Diamondcite: It\'s not very hard to implement such a thing. In fact, this thing comes almost right after the \"hello world\" program in almost any graphical programming course, and can therefore be copied with just minor adaptation. :) It\'s not supposed to be a built-in version of The GIMP or even Pain(t). Just draw and erase, that\'s it. Text can even be separate for starters (or flow accross it, meaning you need to insert newlines to bridge the drawing).
-
...just adding, in my idea of drawing, i just thinked in the pencil and paper (black on white), nothing more, nothing with full color range, that\'s why its a Scrapbook/Notebook not a Drawing table :] ...
-
Originally posted by Diamondcite
At the moment I do believe text only is easier, while drawings can be stored in the DB, they will need to implement a method of drawing with the mouse for such a thing... in that case.. care to use a sheet of paper and a pencil instead? :)
Good idea, but you could also write on a sheet of paper right? =)
-
Hmm...
It would be cool to write books :)