Theming: Not modular enough (in General)
QBPixel Sage
December 11 2005 10:01 PM EST
Hey everyone,
Some of you know that I've started getting into making themes, such as PsionicBlue. However, the way that CBII is coded makes it difficult and a bit annoying to theme. In other words, it has limitations that keep me from making themes better.
This is more or less a question for John, but feel free to respond with your opinions.
Is there any chance that something will be done to allow more flexibility to themers? Right now it is limited to custom CSS styles and images. You can't even create your own webpage with frames that loads CBII... if it tries to load main.tlc, the entire webpage will reload out of the custom webpage and into the default CBII website.
A code could be written to allow completely customization. For example, I would be coding something in HTML, and would call {character-name} to display the character name or {clans} to insert a link to the clans page.
Of course, this would be more or less a long-term addition, and I as a programmer know its no easy task. Theming isn't a large part of the game, but it does add to the experience... and may urge more to sign up for supportership =P jk.
Maelstrom
December 11 2005 10:47 PM EST
I'm just guessing, but it may be intentional that you can't use a custom webpage. Jon is very careful about the server load, and if you were to do something "different" with the info, it could make quite a difference.
QBPixel Sage
December 11 2005 11:26 PM EST
I'm pretty sure he did, which is why loading main.tlc causes it to go back to the original webpage. As for the server load, you could allow only certain pages to access information that the original skin does. I'm willing to contemplate on ideas to prevent server overloads, or even work with Jonathan on more cusomized skins.
Of course, most ideas will come with cons, including this one. Part of the reason I created this thread was to talk out how we could work it all out. To "bake" this into a better idea.
AdminJonathan
December 11 2005 11:40 PM EST
If you'd like to volunteer to code this, I can get you access to the development machine and subversion repository.
AdminJonathan
December 11 2005 11:51 PM EST
... but as Mael guessed, it's quite intentional that CB won't run inside other frames. That's not negotiable. :)
bartjan
December 12 2005 1:55 PM EST
CSS *is* how layout in HTML should be done. So using CSS for themes is the only sane way to do it.
Maybe the various things on the page should be divided in more/better detailed classes than we have right now, but given that you can do whatever layout you like in CSS.
Since we're brainstorming...
Perhaps supporter-only versions of the pages written up in anal retentive CSS allowing for unusual page designs without changing the actual info on each page?
QBPixel Sage
December 12 2005 2:05 PM EST
@ Jonathan: That's quite a generous offer, though I'd have to contemplate on it more before deciding whether or not to take up the job.
@ bartjan: That's the problem. The contents of the webpage weren't divided into good detailed classes. As of now, there are many parts of the website that share the same classes and such. Thus, when I want to change only one part of the design, it effects other parts, giving undesirable effects. Of course, if we could do layout in HTML as well, that'd help. Browsers don't all interpret CSS like each other as well as they do HTML.
@ Sukotto: Yeah, that'd be nice. I actually don't want to change any information on the page. The way the site is laid out is great. Its just the customizing of the look that's limited.
bartjan
December 12 2005 2:14 PM EST
CB's favorite browser obeys the W3C CSS specs very good.
AdminJonathan
December 12 2005 2:42 PM EST
and I agree that CB's css kinda blows. that's why I'm offering pixel a chance to fix it. :)
how about a Christmas theme, since Christmas is coming up :D eh!??. just a thought since you talking about making a new theme
QBsutekh137
December 12 2005 10:40 PM EST
Actually, they are discussing a new "theme" for running the themes. Yeah, the indirection is getting thick. *smile*
i know, im just saying, a holiday (Christmas) theme would be pretty cool, to have during the holidays, like maybe a winter one...
Stephen
December 12 2005 11:11 PM EST
CB isn't Google! ;)
QBsutekh137
December 12 2005 11:27 PM EST
Oh, it's a rocking good idea, peanut.
Maelstrom
December 12 2005 11:32 PM EST
Well, to be politically correct, we couldn't have just a Christmas theme. We'd have to have Hannukkah, Kwanzaa, Ramadan and any other important religious ones of Buddhists, Hindus, B'Hai, and let's not forget the Rastafarians!
Hmm, that last might be a good year long theme... ;)
Maelstrom
December 13 2005 1:58 AM EST
Bast has corrected me: that should have been "
Pastafarians".
Forgive me for my mistake, O Great Noodly One.
Xiaz on Hiatus
December 13 2005 3:55 AM EST
yeh the classes are limited, and takes a while to find what sections on the actual page belong to what class. this would indeed be a welcome change :)
i mean, better flexible themes? why not! it gets my vote (if my vote counts) :D
QBPixel Sage
December 13 2005 3:14 PM EST
I'm wondering... is there any way I could create a more modular HTML code to use, in such a way that only certain themes will use this new clean/flexible code?
We could implement something where only certain themes will use this HTML, such as making it detect for a file in the theme's root directory.
I think this would be a much easier solution than having to create a boat load of code to allow absolute theme customization.
Your thoughts everyone?
AdminShade
December 13 2005 3:17 PM EST
Perhaps the same way that you pick a theme now, just have the addition attached to it?
bartjan
December 13 2005 3:46 PM EST
Does that subversion repository only contain the user interface part of the game, or the entire game? Maybe I could help a little on this (but I'm seriously swamped with work, so don't expect too much...), but also want the way the game works kept a secret to me, so I can continue playing CB like I'm used to.
AdminJonathan
December 13 2005 5:56 PM EST
pixel: I don't want to modernize the html generation while trying to keep the old crufty stuff around too. That would mean every time I made a change to the UI from then out, I'd have to make changes in two places instead of one. Not a good idea for maintenance.
bart: a lot (most?) of the "how CB works" is in modules that don't affect the html generation, but a fair amount is not.
QBPixel Sage
December 14 2005 4:07 AM EST
Very true, hadn't thought of that. Well, we'll see. If bartjan is willing to help out, that'd be great.
This thread is closed to new posts.
However, you are welcome to reference it
from a new thread; link this with the html
<a href="/bboard/q-and-a-fetch-msg.tcl?msg_id=001dQ9">Theming: Not modular enough</a>