I remember the real-time wall on the LuaLearners website was absolutely fantastic. You could see posts being posted so you weren’t ninja’d, not have to refresh the page every second (pages take longer to load than to click – at least with my connection), and conversations would be easier to carry out.
But I also want to see that feature they discussed about having your own “forums” on the site for your specific game/ group. I cannot tell you how AMAZING it’d be; I would be using it all day.
But I also want to see that feature they discussed about having your own “forums” on the site for your specific game/ group. I cannot tell you how AMAZING it’d be; I would be using it all day. [/quote]Yespls
Forums for the groups would be glorious. Could actually sort out the bug reports from general discussions.
The wall on the LuaLearners website was sometimes very slow. It was lagging sometimes. And turning super clans their group walls into chat rooms is a bad idea in my opinion
[quote] Support
But I also want to see that feature they discussed about having your own “forums” on the site for your specific game/ group. I cannot tell you how AMAZING it’d be; I would be using it all day. [/quote]
I was working on a system/site like that, group owners could create their forum for their group and make it only visible for certain ranks. But then I thought “pft who would use this”. And then I banished it.
I’m not sure how LL did it, or even if they did it the best way. I’m also not a web developer, but shouldn’t it be as easy as:
client:
lastUpdate = 0
OnChatted(msg)
sendChatToServer(msg)
end
while wait(1) do
local messages = requestUpdate(lastUpdate, pageNum)
if messages then
lastUpdate = tick()
updateWall(messages)
end
end
Server:
local lastUpdate = tick()
local chats = {}
server.OnNewChat(msg)
table.insert(chats, msg, 1)
chats[1].timestamp = tick()
end
server.requestedUpdate(lastClientUpdate, pageNum)
local reportedMessages = {}
for i=1,#chats do
if chats[i].timestamp > lastClientUpdate then
table.insert(reportedMessages, chats[i], 1)
else
break
end
end
end
Basically, only send the client new messages – don’t see how for the client that’s going to get laggy.
I’m not sure how LL did it, or even if they did it the best way. I’m also not a web developer, but shouldn’t it be as easy as:
client:
-snip-
Basically, only send the client new messages – don’t see how for the client that’s going to get laggy.[/quote]
Well it’s the way you make it and organize your MySQL/Postgres database. You should limit queries as much as possible in chats and always use the limit in my opinion. SELECT msg, sender, id FROM chat LIMIT 0,10 for example and not SELECT * FROM chat.
I’ve neither an idea how LL made it, but I know it was slow sometimes.
In PHP/Javascript/Python you will not be able to use tables (it are arrays) for the chat. You use too much Lua xD
This would be EPIC if done right on RBXDev forums. It would be super cool to see an animation on the forum page to show us when a post had been made, like a flash or something, or a green ring that animates into the new post notification.
On the topic of ‘new posts’, the forum forgets when I’ve seen posts, and it gets rather annoying because I end up finding threads I’ve never seen before marked as read.