(But you can call it the UFS Faq.)
FreeSpace Watch uses this file with the permission of the author.
Black Omega Squadron: Epsilon wing
"If you didn't fix it, it's probably broken."
||Volition Inc. for their
constant feedback to the Freespace community.
All those of The Descent Freespace
All those who offered comments and criticisms.
DocHopper (Matthew Barns) for hosting this FAQ
and for much constructive criticism.
Last updated on June 9, 1998
About the UFS Faq
Why is it called "Descent"?
Parallax Online (PXO)
TCP/IP networking (LAN)
Improving Internet Play
General Technical Issues
I am in no way affiliated with Volition Inc. I am not an employee
of Volition Inc., nor do I have any inside information on their doings. I was, am
not, and likely will never be a Beta tester for Volition Inc.
All that I present here is based on information from Volition Inc., my own
experimentation, and the feedback of others. I have verified things where I could,
and noted where I have not. To the best of my knowledge, all information presented
in this FAQ is accurate. I will accept responsibility for any inaccuracies.
Where I am ranting, it is noted.
This FAQ grew out of my my complete frustration with the disorganized nature of the
Freespace community. Information was plentiful, to be sure, thanks in part to the
Descent Freespace Forum and lots of feedback from Volition Inc., but there was no
centralized depository for this mass of information. And I could tell that I wasn't
the only person that was frustrated...
And so the UFS Faq was born. (sniff, sniff)
For now, the UFS Faq is merely a collection of Forum posts that were hand-picked to
deal with the chaos in this emerging Freespace culture. Most of them are about
multiplayer, and some address some more specific technical problems.
In the near future, I will be adding FRED related information and a "compass"
for the Freespace multiplayer community. I'd like to talk about some of the
multiplayer campaign ideas. Last but not least, I intend to add a general overview
for those new to Freespace. As more things come up, of course, this UFS Faq will
What this FAQ will not have: mission walk-throughs. That's all for now.
I may add a section on what this FAQ will not include. Let's hope it doesn't come to
I may also have some "essays" on some of the issues discussed in the Forum,
such as the influence of Egyptian Mythology on the Vasudian race, Freespace's use of
subspace and how it relates to theories of Hyperspace, and different campaign schemes for
multiplayer squad league games. If you don't want to wait for me to compile this
stuff, you can still find the raw threads at the The Descent Freespace Forum.
(Though not about Egyptian Mythology, as that was on the old Forum.)
|0.3 Why is it called "Descent"?
"Descent: Freespace" is not the sequel to Descent. It is not in any
way associated with the Descent series, except in name. The sequel to Descent,
Descent3, is being developed by Outrage, Volition Inc.'s sister company. Freespace
is a Space combat simulation, of the Wing Commander and X-wing variety.
Why is it called "Descent," then? Trademark issues.
"Freespace" is the name of a disk compression utility. Volition Inc. tried
several other names (some of them pretty stupid...) before Interplay came up with the idea
of adding "Descent" to the beginning. Problem solved.
Needless to say, this has generated some confusion within the gaming community.
Those who hated Descent shun Freespace, and those who were Descent cult members shun it,
too. Same with the space combat crowd.
|Revision 0.1 (6/7/98)
- Initial release of the UFS Faq. Was avalible in raw text only.
|Revision 0.2 (6/8/98)
- Converted UFS Faq to html format.
- Added revision history.
- Updated "Thanks to:" table.
- Added several questions and answers submitted by DocHopper.
- Added more links.
|Revision 0.3 (6/9/98)
- Added much network related information.
- Created Audio, Video, and Input subcategories in Section 2.0.
- Put Questions in red for easier visual recognition.
- Added Dave's Commentary on the PXO problems.
- Added more links, and a Newsgroups section.
- Added more info to the AWE64 answer.
A message from Volition Inc.:
We are aware of the problems many of you are having regarding lag and general
performance with FreeSpace over the Internet. Symptoms of these problems include:
- large delays between firing & appearance of shots
- inability to hit other players due to slow updates/choppy ship movements
- combination of both
[Note from Pastel: Lag and dropped/inconsistent packets, basically.]
We're working very hard to improve the Internet play, and to fix the problems being
reported. What we need from you players is a lot of specific information. People
should report their observations (good or bad) and problems to email@example.com.
Please include the following information with your reports:
- Type of connection being used by the server (28.8K, 56K, ISSN, etc.)
- The number of clients in the game
- Type of connection the clients are using
- The Object Update setting being used by clients (try LOW and see if it improves)
We're also aware of the problems some of you are having with the Registration page. The
User Tracker that handles registrations and validations is crashing periodically, and we
hope to fix the problem very soon. Thanks for your patience and continued support!
|1.1 Parallax Online (PXO)
A message from Dave of Volition Inc.:
Hi all. I would just like to preface this message with a big thanks to everyone who has
been patient and helpful dealing with the problems that we've run across. Its good to see
people are willing to help make this game better and not just dismiss it offhand.
So, I would like to address several issues here. Notably, the big lag problems people
have been having, our PXO server problems, some more specific guidelines for setting up
Freespace servers, and what we're currently working on to fix all this.
From what I have gathered, there are 2 classes of this problem. One, is the case
where people will hit the trigger and their weapons
will fire some time later (~ 5-10 seconds). The other is very high chorines of movement of
ships in the game for clients.
We know that one of two things is happening in this case. Clients are either
flooding their own outgoing connections with "control info" packets or the
combination of all clients are flooding the server's incoming connection with
"control info" packets. There are various reasons why thing were done this way,
but the appear to be invalid :) In either case, we've changed the code around so that its
essentially impossible for clients to flood their outgoing connection, even on a 28.8
modem. In the absolute worst case - 28.8 connection running at a really high frame rate,
these new changes will ensure that the data rate outgoing from clients will be ~450
bytes/second. Well within reason. In fact, it even leaves room for a significant chunk of
voice bandwidth. We're currently in the process of testing this system and we hope that it
will solve the majority of this problem.
It seems to me that the majority of this problem is improper server setups. The
hard fact of Freespace is that we've got lots of data to send.
If you compare it to your average first person shooter like Quake :
Given a mission in Freespace with 10 ships (whether they're clients or AI doesn't really
matter), you've got to send data for those 10 ships essentially all the time. There's no
walls or geometry to hide them. 90% of the time, a client sees about 90% of the ships in
the mission. As anyone who has played Quake II will know, things get pretty nasty if you
have even a handful of guys in the same room, and you're playing on a slow
connection (<= 56k). In a game like Freespace you've got something similar to a 12+
player game of Quake running with each ship having drastically higher firing rates. This
should give you an idea of the amount of data we have to handle. You can either not send
it, or send it less often, but its still exists.
So, given these restraints it's important that people understand how to setup net
- Server bandwidth is finite. If your server is a 28.8 modem, and you have a single client
on high updates, that's the end of it. No more bandwidth for anyone else and the server is
likely flooded anyway.
- Its not only possible to flood clients, its possible to do so to the server. If you have
several clients connected to a server, and he can't handle the upstream load of all their
"control" info packets, then his incoming is going to be flooded and you're
going to get slow responses for stuff like firing and ship movement. This is what we think
is the major cause for the really slow firing/countermeasures on clients. How we are going
to be fixing this problem will be addressed shortly.
- Some #'s just to give everyone an idea of the math: Client control info is approximately
31 bytes long. If we send that 15x a second to the server, you get a total of about 465
bytes sent to the server per second. Doesn't sound so bad, right? Now multiply that by 4
clients and you get ~1800 bytes/second. Dangerously close to the limit for a 28.8 modem.
That # does not count other information such as voice data (add an extra 1 k/second for
that), and others. 8 clients ? Now you need at least an ISSN because 56.k modems are 28.8
incoming. So ~3600 bytes/second immediately puts it over the limit. Now, those numbers are
from client to server. The #'s from server to client are even bigger. So let's cap clients
set for "low" update at 2200 bytes second, and "medium" update at 4000
bytes a second. This kind of data rate is too low to accurately send all the info we need
to all ships/missiles in the game if you want smooth results. No matter how much
compression you do on it. And that's just for 1 client. Try 4 clients on "low"
update now and you get something like 8000 bytes/second. ISSN and up can handle this. Jack
it up to medium update and you have 4 * 4000 == 16000 bytes/second. ISSN cannot
handle this. So I guess my point is, there's only so much we can do to reduce bandwidth.
Its there. Unless you want a handful of ships (say 4) to be moving nicely and the others
to be completely unmoving, we have to send at least a little information for
everything. Note: this is not to say we can't reduce the effects of this daunting
bandwidth, its just important for people to realize what the server/clients need to be
able to do.
So how are we going to handle all this? Well, the solution is pretty straightforward
and limits the really bad situations.
- We're going to split out firing information (lasers, secondaries, countermeasures,
afterburners) into its own packet. This packet will be 2 bytes long and will be sent at
the client's frame rate. Even at 60 fps, this is only 120 bytes. Probably not too big of a
deal. We may in the future want to limit this to say a max of 50 fps.
- Control info will be sent from client to server at 15x a second. This way we can
guarantee a constant data rate incoming to the server. Makes it easier to reduce flooding
on the server side, and should eliminate flooding on the outgoing portion of the
- Limiting the major part of our bandwidth, object updates. A proposed scheme follows. The
object update setting on the server determines the highest rate clients can choose. So if
a server says "low (2200 bytes)", even clients set on "high" will only
be alloted 2200 bytes/second of bandwidth. If the server specifies "medium (4000
bytes)", clients can never go above that. If the server specifies "high
updates", we will use a default of 11000 bytes/second. There will be an option so
that servers set on high can set an arbitrarily high data rate cap for servers. So if
you're no a T3 you could say 10000000 and not worry about it. The bandwidth specified by
one of the above settings will be equally divided up amongst all the clients in the game.
This way we can theoretically preserve an absolute maximum amount of data ever being sent
from the server, so he should never be flooded. At the same time, this guarantees that the
clients setting is at least as low as the server's. So clients can't get flooded if
the server chooses a setting poorly.
Our major efforts are going to be in making sure ship controls (firing, etc) are
responsive. Our other focus is to attempt to make intelligent limits on bandwidth so that
the game becomes playable for all who understand the settings.
Ok, so Parallax Online is basically a 3 machine setup. One server (the user
tracker) handles all the statistics management, web registrations, emailing and user
accounts. The second server (the game tracker) handles maintaining the list of active
Freespace game server, and sending these lists to querying clients. The 3rd server (the
chat server) is the chat server which you use when you first login to PXO. These 3
machines are independent but are interrelated. The problems people have been having
recently (logging into PXO and registering/vaildating pilots) has been due to the fact
that the user tracker had been crashing. When Freespace fails or times out when validating
pilots, it won't let you log onto the chat server (which has been running with no problems
since day 1). We are 99% sure that we've nailed down the problem with the user tracker so
it should be running pretty well. We recently started seeing some strangeness with the
game tracker which may explain why people haven't been able to see any servers when on the
"join game" screen. We think this was just over the last evening. We're
monitoring the server right now to see if we can catch why this may have been happening.
I've mentioned this before, but PXO is truly in its infancy. Unfortunately, we
were not able to do very large scale testing before it was released to the public, but
despite that, I think it is shaping up quite nicely. 100% reliable performance should be
expected within a few days. Keep in mind that this is a totally free service which is
unsupported by Interplay. Its just us doing it. Also, you do not have to use PXO to play
freespace games. If you go into the options menu (F2) you can switch the PXO off and
either do local LAN game detection ("local broadcast") or enter specific IP
addresses you want Freespace to query whenever you go to the "join game" screen.
I'm not sure of an exact time frame for a patch of this nature by I would estimate
sometime before the end of this week [of 9/8/98].
Thank you, and I hope this clears up at least some of the confusion until we can get
things better organized.
From Dave of Volition Inc.
[This will eventually be sorted into Q and A format.]
||When logging on to PXO, the interface slows to
a crawl. The mouse cursor jumps all over the screen!
||Updating W95 to Winsock2
should fix the problem.
Note that this is not Winsock 1.2. Winsock 1.2 doesn't help. Freespace
version 1.02 has fewer problems with older winsock versions.
||Games in PXO are so slow!! Why?!
||After installing Freespace, reboot your computer, then launch
freespace and click the "Update Freespace" button that comes up. This will
update Freespace to version 1.02. The rest is best said by Volition Inc.'s Adam
We're aware of the problems many of you are experiencing with lag/general performance
problems with internet games. We're working very hard on the problems and will get updates
to you players as soon as possible. In the meantime, here are a few pointers to keep in
mind. These aren't complete solutions, but will definitely improve things for many of
- Make sure everyone has the 1.02 update!
- If you're using a 56K modem, set your Object Updates to MEDIUM or LOW (LOW is better).
This is found in your Options->Multi screen. If you use 28.8, definitely use LOW at all
- Try to play on servers with 300 ms ping time or less. Lower is better. Not always
possible, I know, but as more people get the game, more servers will spring up.
- If you're using 28.8 modem, don't Create any games, just Join them. 28.8 can't handle
the bandwidth needs of being a server, even with a couple people. 56K modems are pretty
shaky for this too. Servers are best run by people on dual-band ISDN, Cable or T1
--Adam Pletcher of Volition Inc.
Section 1.3 of the UFS Faq (this document) has some more tips for a
||Insert PXO-related question here.
||Since I'd like to get this document out quickly for the initial
release, I won't go over everything.
However, I will point you towards PXO's
FAQ and Section 3.1 of this document, which should answer a lot of
your PXO questions.
||PXO sucks; everything is just too slow.
||Freespace is new, and consequently not many people have it yet.
Therefore, those servers you see are for the most part non-dedicated servers set up by
over-eager people and running on flimsy connections. I imagine in a few weeks after
Freespace has spread, people will start putting up dedicated servers attached to fast,
reliable connections. This is much like what happened in the early days of quake, before
the culture solidified.
If you have a fast connection (Dual ISDN or
faster), please set up a dedicated Freespace server! Run Freespace with the
command line: fs -standalone.
For more information, see Section 1.2.
Give back to the Freespace community!
Also look in Section 1.3 for tips to a faster connection.
||How do I set up a
||Start Freespace with the command line: "fs
Note that you do not need to have the Freespace CD in the drive to run a dedicated
server. However, you must have a "Typical" level install of
See the PXO FAQ and the
Readme.txt that came with Freespace for more information.
||How come when I log on to PXO it gives me a message about
"attempting to verify user" and doesn't do anything after that?
||Parallax Online is a new gaming service, and consequently not all the bugs have been
worked out yet. Occasionally their verification server goes down and causes this
message. Give it a few hours and try again. (Play the single player game and
get better -- yeah!)
Thanks to DocHopper.
|1.2 TCP/IP and LAN Networking
||How do I play Freespace over a LAN if there's no IPX support?
||You may have noticed there's no IPX play in Freespace, but it's
really no big deal! A TCP/IP network is easy to set up under Windows 95.
- Open "Start Button->Settings->Control Panel->Network"
- Once in Network, Click on the TCP/IP protocol that is bound to your LAN card (it should
read "TCP/IP -> NAME OF LAN CARD").
- If there is no such thing on the list of network components, click
add->protocol->add->Microsoft->TCP/IP. The Binding should be added to
your LAN card.
- Now the hard part. Click on the IP Address tab, and then the "specify IP
address" radio button. Enter 255.255.255.0 for the Subnet mask. The Subnet mask must
be the same for each computer on the LAN.
- Set an IP address. IP addresses are 192.168.X.Y, where X and Y are a number between 0
and 255 (but not 255!) and Y cannot be 0. Y must be different on every computer on the
LAN, and the rest of the address (including X) must be the same on every computer.
- Click OK, reboot, and you now have a TCP/IP LAN!
Start a multiplayer game using the instructions in the Freespace manual and Readme.txt.
Don't forget to uncheck "Log on to PXO" on your multiplayer options menu.
If you can spare the computer, you can set up your slowest machine as a dedicated server.
Thanks to DocHopper for help with this answer.
||I am running Freespace over a proxy or firewall. How do I
set this up?
||Firewalls and Proxies vary, but open the TCP and UDP ports that Freespace uses and you
should have no problems.
||What ports do Freespace and PXO use?
||Freespace itself : 4000 (UDP) and 3999 (TCP)
PXO chat server: 7000 (TCP)
PXO user tracker: 3493 (UDP)
PXO game tracker: 3440 (UDP)
||I am using Network Address Translation (NAT) and I am unable to
find/connect to game servers on PXO. PXO chat and verification works fine, though.
||NAT (also known as IP Masquerading) is a common LAN to Internet type of routing that
allows one machine to act as a router to the internet, routing all packets from your local
lan machines to the internet. Linux has an ipmasq application which is fairly popular with
Quake/Quake2 players using Win95/98/NT.
Thanks to Karl.
Freespace does not work with NAT. Workarounds are
being looked in to, but no promises.
Volition Inc. is working on a real fix.
|1.3 Improving Internet Play
||What can I do to improve laggy gameplay?
||There's a utility, called MTUSpeed
that alters some registry settings and greatly improves the connection through a modem.
Microsoft set the default packet size to 1500 bytes; this utility sets it to a more
conservative 576 bytes. There appear to be performance problems with packets >1k
under Windows 95. When there are packet errors during a transfer, a smaller amount
of data (at most, 576 bytes, instead of 1500) must be retransmitted.
Thanks to Jay Grizzard for clarification.
Other causes for slowdown: FIFO
buffers (you might want to set these to 1, but don't disable them), error correction, and
data compression. Any type of buffer can cause lags and delays between your modem and the
rest of your computer. Error correction and data correction take up cpu power, and can
sometimes slow down the ISP's modem hardware, as they have to process packets before
I recommend making a separate Dial-up Networking icon which dials the same number as your
normal connection, but disables error correction and data compression. You should
use this icon for online gaming, and your normal one for web browsing.
CPU usage can also cause problems. Freespace uses enough as it is trying to draw the
screen. Having to process multiplayer data might slow it down more. Try reducing the
Update your Kernel to Kernel32.
Note that this is only for Windows 95!
Update your Winsock to Winsock2.
More general tips can be found at Planetquake
It may also be your ISP that's slowing you down, though only you can make that
judgment. If you access the internet though an online service (like AOL) then you
almost certainly have a bad connection for Freespace gaming.
||What server-related things can I do to improve
||If you're playing an a server who is using a modem, you should lower
your own update level even if you can handle something higher, simply because you don't
want to flood the server's downstream bandwidth. He's got to support several people at
once, keep in mind.
Thanks to DocHopper (Matthew Barns), and Dave Baranec with PXO.
||Okay, but I want to tinker with this a
little. What are the numbers?
||Object update settings:
Low : If you're on a 28.8 modem, this is the way to go. This setting includes flood
protection up to 2400 bytes/sec (19.2kilobits/sec), which is just right for a 28.8
Medium : If you're on a 56.6 modem, this is the one you want. Includes flood
protection up to 4000 bytes/sec.
High: This is for high-speed users and LAN play only. Unless you have dual channel
ISDN or higher, you'll only degrade game performance by trying to use this setting.
Thanks to DocHopper (Matthew Barns), and Dave Baranec with PXO.
||Can Freespace be set up as an NT service?
The FS standalone will not run as a service, currently. It's a free-running app
that must be kept minimized. Sorry. If it's not too difficult, we might
consider it for a future update, however.
Adam Pletcher of Volition Inc.
|2.0 General Technical Issues
||What can I do about my mysterious Video/audio/input problem?
||A lot of problems can be attributed to outdated DirectX drivers. If you're running
Windows 95/98, make sure you're running DirectX 5.0 or better). If you're running
under Windows NT 4.0, you must have DirectX 3.0/Service Pack 3. You will want to check
your DirectX setup.
Thanks to Interplay tech support.
Also, update your version of
Freespace. Version 1.02 is the latest as of the day of this FAQ release.
||My microphone does not work in
Freespace. I can use it with no problems in Windows 95, but when I try to test it in
Freespace, it says "You can not record. Please install DirectX," or
something like that.
||You may need to install DirectX, although if you got Freespace to
run, probably not.
Chances are that your sound card does not have DirectX certified drivers, at least not for
recording. You can check this by running dxtool.exe (Usually in "C:\Program
Files\directx\setup\") and looking at the specs under
If this is the case, look for updated drivers
from your sound card company and/or install DirectX 5.2. If none of these work, then
the chances are very great that you cannot use your microphone in Freespace. Go
bother your Soundcard manufacturer for DirectSoundCapture support.
Ensoniq AudioPCI cards are known to not support DirectSound Capture.
Monster Sound causes Kernel faults when trying to use voice in the game, although the
in-game voice test works fine. This is fixed by updating Freespace to version 1.02.
||My Computer locks up with
a black screen when I run Freespace. I have a Sound blaster AWE64.
||I am not sure if this fixes the problem.
Mess with your Duplex settings in "Control Panel->System->Device
manager->Sound, Video, and Game Controllers." Open the properties for your
AWE64 and go to the Settings tab. It should be "Full Duplex."
thing to try:
If you have a US Robotics or other voice modem it causes a problem with sound from the
Sound Blaster AWE 64. Due to the game having the voice communications thing between
players, it will give conflicts to whoever is using a voice modem, because it tries to use
the voice modem as a sound card to use the mic for some reason. Which may be why
some people cannot use there mic in a game. It took me a couple of all nighters to
figure it out. To resolve this problem as of now you have to go to "Control
Panel->Multimedia->Advanced->Audio devices->Voice Modem Serial Wave
Device->Properties." Select "Do not use audio features on this device,"
and click OK. Reboot your computer, and everything should work fine. Note that disabling
the modem in the device manager is not sufficient; you have to go into the control panel.
Thanks to Diablo (Kevin).
Yet another unconfirmed fix is to place your virtual memory in a separate drive
Open "Control Panel->System->Performance->Virtual Memory" Click
"let me specify my own virtual memory settings." Under "hard
disk," select a drive that is different from the one where you have Freespace
installed. For "minimum," use 0 and for "maximum," use a number
that's twice the amount of RAM you have. Click "yes" when you get that
Reboot and try Freespace.
If none of this works, contact Volition Inc. Tech Support. Be very detailed.
||I have a 3DFX card, and it says "Expected VXD version 1.2,
got V1.1". What do I do?
||This is caused by one of the following:
- Your \windows\system\fxmemmap.vxd file is out of date. Getting and installing the
latest Glide drivers should fix this according to 3DFX. Or, simply copy the
fxmemmap.vxd into your windows\system directory.
- There is an out of date fxmemmap.vxd somewhere beside windows\system directory.
You should find all versions of this file on your drive (using Windows' Find command,
avalible in the Start Menu) and put the latest one in windows\system. Delete all
other versions of it.
Thanks to DocHopper.
||My Video is just too smooth! Is there any way I can
increase the resolution?
This was discussed in the demo days. The basic problem is that to offer higher
modes, all the HUD graphics have to be redrawn at the higher resolution. This takes
time, time Volition Inc. didn't have, at least not if you ever wanted to get the game on
They said they would consider the option in a later patch. I
think probably much later, as they are pretty busy right now.
||My CH Force FX Joystick is not "Force
Feedbacking." What gives?
- Make sure you have the latest version of DirectInput.
- Make sure you set up the joystick properly in the Windows 95 Control Panel. You
should select "CH Force FX Joystick for DX5 (Serial)". Note: Do not use
"CH Force FX Joystick (analog mode)", as this does not support Force
Thanks to DocHopper.
||My throttle is not working in Freespace.
||Throttles are not enabled in Freespace by default. You must enable
them. All joystick configurations can be done in Options (press F2 while in game) in
Scroll down to the last to entries: Absolute
and Relative throttle.
Absolute throttle means when you let go of your throttle, the speed will remain
Relative throttle means that when you let go of your throttle, the speed will return to
what it was before you modified your speed using an absolute throttle.
Click one of these and click "bind." Move whatever controller you want
to be mapped to this function. You can even map a joystick axis to a throttle by
moving the joystick along the X or Y axis.
Also make sure your controller is set up in "Control Panel->Game
GTA Central Command
Terran Tactical Database
Descent-Freespace.com - Member of
the Descent Network. (That's the old-school Descent, with the tunnels.)
The Descent: Freespace
The Kestrel's Nest
The Descent: Freespace Webring -
A cacophony of Freespace web pages, some good, some not.
The Freespace Pages - A UK Freespace
The Descent Freespace Forum
Gaming Task Force Squadron Command HQ -
A relativley new Gaming League.
Squadrons: Some are better than others.
Black Omega - This is my squadron.
HELL SPAWN Squadron
The Cult of Sivar
alt.games.interplay.freespace - This is a
new group, and many news servers do not have it. Bother your Network Administrator
to get it.
alt.games.descent - This group will hold you over
until your news server gets interplay.freespace.
Contacting Volition Inc.
Always be very detailed about the circumstances surrounding your problem and about your
system specifications. The more information they have, the easier it is for them to
help you. And they do want to help you. They do. Really.
I welcome comments, criticisms, suggestions, and yes, even flames.